Fixes broken configuration when modifying stages in the GUI, if those stages were not inserted by the GUI

All stage configurations that the GUI touches will now get the fields stageName, stageGroup and libId added to their properties map.
This means the stagegroups endpoint returns a modified properties map that contains the fields, and adding a stage using the Admin Service automatically adds the fields.
The stages endpoint will return only the fields that are currently stored in the database, with no additions.
Merge pull request #331 from laserval/fix-broken-config-inserts-from-gui

Fixes broken configuration when modifying stages in the GUI, if those st...
Updates memory connector to conform to database API for mark-methods
Removes extra getDocumentById when receiving mark requests
Extracts common method for marking documents, adds handling of connection failures
Names a few of the unnamed threads in Hydra Core
Ensures tests using Main can run to completion by allowing injection of the HydraKiller. Adds tests for document modifications to FullScaleIT
Fixes MongoConnector not ensuring document changes are saved when marked
Reformat
Extracts interface for RemotePipeline to allow other implementations besides HTTP

Conflicts:
	api/src/main/java/com/findwise/hydra/local/RemotePipeline.java
	core/src/main/java/com/findwise/hydra/net/RESTTools.java