Made single entries return Activities

Made the StreamEntryResource return activities in ActivityStreams
format instead of Atom.
Removed Atom dependency.
Added tests for using activity IDs.
Tenant Key work

Made generated tenant keys UUIDs.
Allow setting of initial key upon tenant creation, with test.
Add IDs to posted activities

Return the modified or created activity in the post response body.
Ensure post response body is JSON.
Make created IDs URI tags.
Remove override to Neo4j 1.9.5 in pom.
Move to Neo4j 2.0
Add E-Tags to Stream GETs

Add the ability for client-side caching of stream GETs via E-Tags.
Added tests.
Added test for JSON content type header for stream.
Work on Headers

Made metering headers only send on non-failure.
Attempt to make Location header relative, but this fails. See
http://bit.ly/1cGD7Vc. This can be shown to fail by changing the
getPath() on line 82 of StreamResourceTest to toString().
Make a test class for the header filter. Property setting causes
concurrency issues due to static config in main class, so the methods
are commented out. Will consider making the properties a passed
dependency instead.
Remove blocked header work
Big Resource Update

Cleaned up content types (json) for most external resources.
Added ETags with proper handling to StreamEntry, Stream, and Feed
Made StreamEntries handle conflicting and missing IDs appropriately
Changed following to include date of follow relationship - checking for
follow now means checking for non-null follow date. Unfollow also
returns the original follow date.
Updated Activity to include object and verb
Updated ActivityStreamsObject to include CollabinateObjectId
Neo fixes

Fix bug with storing date times in neo.
Rename tenants in reader test so concurrent unit testing works with
neo.
Entry ID and Follow work

Made POSTed entries always have generated IDs. This includes storing
the original ID in a separate attribute.
Added date return to follow check so that correct date of follow
relationship can be used in PUTs. Also based the response code on
whether it was created or already existed.
Added paging to follower and following resources.
Fixed bug where start index wasn’t used in feed resource. Added tests
for start and count params for streams and feeds.
Change Stream Entry to Activity
Entries to Activities

Massive refactor to get rid of the unnecessary abstraction of a
StreamEntry object, and clarify terminology and system usage everywhere
by getting rid of the term entry.
Also change start and count resource parameters for paging to skip and
take to better align with database mentality.
Schema additions and ID code cleanup

Fix bug with duplicated tenantID when updateFeedPaths is called (it
took the already formatted ID from add or remove activity and passed it
to follow and unfollow entity, where the tenant ID was prepended again)
Centralize ID building for vertices (now only in
getOrCreateEntityVertex and serializeActivity)
Remove IDs from edges
Add formatted IDs to activities
Add Vertex Type properties
Add Created properties
Add EntityID to all nodes and edges related to an entity
Add ActivityID to activity nodes
Fix brittle empty string comparisons
Fix duplicate users
Add tests for updated dates

Tests for ensure that updated dates in activities
Bump to 0.6.0-SNAPSHOT
Make comparators members

Make the comparators members of the engine so that they are not
instantiated on each stream/feed call.
Implement Feed Overlays

To avoid running out of unique edge labels and keep feed edge checking
cleaner, implement the idea of overlaying the feed entities with
vertices unique to the following user.
Make the Following Entity resource return a 404 when deleting an entity
that is not followed.
Admin Schema Update

Make fields nicer for tenants
Bump to 0.6.0
Add Collabinate metadata ability

Cleaned up unused "object ID" code.
Made Original ID live in Collabinate metadata.