Create serializers and deserializers for model classes.

The default serializer for the question/comment/answer objects is almost perfect, but custom ones give more control.
In the case of deserialization, custom deserializers allow us to pack data into existing objects, which needs support
in DataManager.
Fix putting data to ES.
Add header to SearchHit
Merge branch 'master' of https://github.com/CMPUT301F14T14/Project into remoteDataStore
Merge branch 'dm-changes' of https://github.com/stephenjust/Project into remoteDataStore

Conflicts:
	QuestionApp/src/ca/ualberta/cs/cmput301f14t14/questionapp/model/Comment.java
	QuestionAppTests/src/ca/ualberta/cs/cmput301f14t14/questionapp/test/CommentTest.java
	QuestionAppTests/src/ca/ualberta/cs/cmput301f14t14/questionapp/test/data/RemoteDataStoreTest.java
Fixes to match DM changes
Merge branch 'master' of https://github.com/CMPUT301F14T14/Project into remoteDataStore
Merge pull request #126 from stephenjust/remoteDataStore

[RFC] Put data to ElasticSearch