flattening out profile data
Merge branch 'master' into local
fixing bug where if user has no boards, get-notes-from-board-ids would bomb.
Merge branch 'master' into local
fixing obnoxious oversight casued by last error handler change (log was spitting out all the unsightly TCP CONNECTION CLOSED!!!1 errors. ugh.
fixing obnoxious oversight casued by last error handler change (log was spitting out all the unsightly TCP CONNECTION CLOSED!!!1 errors. ugh.
Merge branch 'master' into local
Merge remote-tracking branch 'origin/local' into local
adding cid tracking to models that need it
Merge branch 'local' into sync
Implementing sync tracking table

Every change to the profile data (aka NOT messages) now adds an entry
into the "sync" table. Every operation that changes the data also now
returns a "sync_ids" key in whatever object is returned, which holds the
ids of each sync record. The idea is that these ideas can be tracked in
the client, and when a POST /sync is called, each change will come
through with the full-changed object, AND the sync ID that made the
change. This way, the client can ignore specific changes, and let other
ones through (like, I edited this note, but someone else did too, so
instead of doing a blanked ignore of this note on the next sync, now i
can specifically ignore MY change, but let another user's change in).

None of the actual syncing functions are implemented yet, they are still
working on the old `mod` field system. Need to come up with brand new
queries...

Also none of the above is really tested, yet.