the Character.populate() method for adding fleshed-out characters to the user document before pushing to the buddy list didn't work because I decided not to store the currently selected character on the user model, and left it on the session. Also it turns out that we can't arbitrarily add fields to a mongoose document directly since they aren't really JS objects and the changes will get dropped if mongoose doesn't recognize the field name. The work-around is to use document.toObject() on the mongoose document which converts to standard JS object. This can be modified with arbitrary fields but not saved to the db - forunately this works fine for sending info to the UI. fixes #49