refactor save random message function to super class
implements delete db trigger
add special DELETED message
update IDataStore to implements delete
improve datastore testcase
fix trigger insert null value to none-null column bug
fix wrong sql trigger , fix delete test case
delete message consider user info ,to avoid delete by others.
datastore delete action use changes to determine if success
add MessageService.delete method and DeleteMessageServlet
register DeleteMessageServlet
implements delete message logic
makes DELETED_MESSAGE as a static field of SpecialIdentifiable
add AbstractMessage.invalid method
invalid message when deleted
update todo