* added new database table of invited email addresses
* altered user_notebook table to have a new owner boolean column, indicating whether the user has owner access to the notebook
* altered notebook and note tables/views to have an additional user_id field to indicate the user that created that revision
* updated model.Notebook and model.Note to support new user_id field
Now the client has to explicitly request the inclusion of startup notes.
Also no longer including startup notes or revision lists with every single
serialized Notebook.
* model.Note has a deleted_from member to indicate the notebook id it was deleted from (if any)
* controller.Notebooks sets the deleted_from member and makes all deleted notes startup notes in the trash
* new controller.Notebooks.undelete_note() method
* split up the idea of UI messages into errors and informational messages, with separate CSS
* updated Editor and Wiki UI code to deal with new deleted_from variable
* added "undelete" button when viewing a deleted note, and "delete" changes to "delete forever"
* added a "trash" link to the notebook links
* reorganized responsibilities for displaying notebook/user links among Wiki.populate() and Wiki.display_user()
* when deleting messages in a notebook with a trash, displaying "The note has been moved to the trash"...
with a working undo button!
* tweaked focusing logic in display_search_results(), which has been renamed to display_loaded_notes()