title: flask-sqlalchemy append to pickletype doesn't update
body: <p>I have the following flask-sqlalchemy table:</p>
  
  <pre><code>class Repo(db.Model):
      id = db.Column(db.Integer, primary_key=True)
      name = db.Column(db.String(50), nullable=False)
      followers = db.Column(db.PickleType, nullable=False)
      created_on = db.Column(db.DateTime, default=datetime.utcnow)
      last_modified = db.Column(db.DateTime, default=datetime.utcnow, onupdate=datetime.utcnow)
  </code></pre>
  
  <p>Let's say I make the following row and push it to the database:</p>
  
  <pre><code>repo = Repo(
      name='My Repo',
      followers=[
          {'name': 'Johnny', 'id': 34752, 'views': 6},
          {'name': 'Mike', 'id': 69241, 'views': 3}
      ]
  )
  db.session.add(repo)
  db.session.commit()
  </code></pre>
  
  <p>If I want to change that row, I should be able to do the following; however, the database doesn't reflect the change.</p>
  
  <pre><code>repo.data.append({'name': 'Jessica', 'id': 12941, 'views': 12})
  print(len(repo.data))
  # 3
  db.session.commit()
  print(len(repo.data))
  # 2
  </code></pre>
  
  <p>I've figured out the following workaround but I'd like to know why the original method doesn't work as expected.</p>
  
  <pre><code>data = list(repo.data)
  data.append({'name': 'Jessica', 'id': 12941, 'views': 12})
  repo.data = data
  db.session.commit()
  print(len(repo.data))
  # 3
  </code></pre>