Major changes to Bodymedia connector.  Also changed the way ConnectorUpdateServiceImpl deals with serverUUIDs.  Need to do 'DELETE FROM UpdateWorkerTask WHERE not (status=2 AND updateType=2);' to make this work with old crufty UpdateWorkerTask tables safely.  This seems to work except that ApiKeyAttribute entries for BodyMedia.{burn,sleep,steps}.updateStartDate keep disappearing
Merge branch 'bodymedia' of https://github.com/arwright/fluxtream-app into upstream_development2
Added TimezoneMap for use by BodyMedia updater timezone calculation
Improved the updateStartDate function to only call setApiKeyAttribute when the value changes rather than always setting it.
Modified getApiKeyAttribute, setApiKeyAttribute, and removeApiKey to deal gracefully with retrieving a null ApiKey from the entity manager since this is a normal condition when a connector is deleted while updating.
Modified flushUpdateWorkerTasks to work properly in the case where wipeOutHistory=false when a connector has failed during an initial history update and is currently rescheduled into the future.  Previous versions left such tasks in the table so that the corresponding connector/objectType would not update when the user requested a sync.  Also changed the behavior when wipeOutHistory is set to true, but that has not been properly tested.
Modified AbstractUpdater to no longer flush all data for a connector to the datastore after updateConnectorDataHistory completes.  Added explicit flush to updateConnectorHistory in FitBitTSUpdater since that was the one connector which was not properly sending initial history update data to the datastore already
Merge branch 'development' of https://github.com/fluxtream/fluxtream-app into bodymedia
Merge branch 'development' of https://github.com/fluxtream/fluxtream-app into bodymedia