Initial implementation of MongoDB storage service
Make use of embedded MongoDB database in unit test
Minor cleanup and tweaks

- MongoDB client and database no longer a static singleton
- Removed implementation of get/setStateValue() until interface can be re-evaluated
- Fixed copy and paste blunder in get/setState() unit tests
Added debug logging to MongoDB storage service
Merge remote-tracking branch 'origin/HEAD' into mongodb-storage-service
Added workaround for bug in SimulationDataStore.deserialize(InputStream). Set MongoDBMechaverseStorageService as the service impl in beans.xml.
Merge remote-tracking branch 'origin/master' into mongodb-storage-service
Removed MechaverseStorageServiceImpl unit test.
Removed MechaverseStorageServiceImpl reference from the storage service test context.
Style cleanup of MongoDB code
Rewired MongoDB storage service to use GridFS.

The previous implementation suffered from scalability problems.  As the number
of entities in a given state snapshot increased, the size of the MongoDB
document also increased.  Because MongoDB requires that all access to a given
document read the entire document into memory, it imposes a 16 MB limit.  The
previous implementation made assumptions about the size of a state snapshot that
were unrealistic, as it did not account for state growing in both the iteration and
entity dimensions.  GridFS was used to avoid this problem.  Each key is written
to an individual file.  At present, an individual key does not approach the 16 MB
limit, but this does provide a layer of insulation from the problem in the
future.  Also, this will allow state keys to be written out individually rather
than accumulating them in a single document to be inserted as a whole.  This
will provide a much more scalable implementation in terms of memory.
Merge branch 'dhendrickson/mongodb-storage-service'
Updated MongoDB storage service to use new SimulationDataStore