Fixed some issues with the Neo4JGraphDatabase.

Fixed two potential infinite loops.
Use a UniqueFactory to ensure that duplicate nodes are not created.
Added fetch, pull and push to web-api. Updated remote web-api to support adding and removing remotes.
Added the statusCode from the RemoteException to the error response.
Revised the response for Fetch web-api command.
Updated CheckoutWebOp and PullWebOp to support conflict resolution.

Updated CheckoutWebOp to support ours and theirs options to resolve conflicts with.
Updated PullWebOp to return the merge commit result so that we can show conflicts if they should arise.
Updated MergeReport to store the objectIds of ours, theirs and ancestor commits.
Fixed a problem with TransactionEnd so that it didn't stop if there was a NothingToCommitException in the case of a fast-forward.
Handled NothingToCommitException in PullOp, made MergeWebOp use the objectIds being stored in the report.
Some minor fixes.

Made it so you don't have to specify a message, mainly just to keep the merge commit message that gets saved.
Added a null check to Push in case a null ref spec was passed in.
A fix to merge, which i accidentally broke in my last commit.
Added Add and Remove commands to the web-api.

Fixed a problem where if there was only one conflict in the conflicts file the file wasn't getting removed.
Made commit require a transaction, to preserve stability.
Fixed removal of conflicts, adjusted some things to get conflict resolution working through the web-api.
Added capability of setting author name and email for merge commits.
Added capability to specify author for commit web op.
Pass through author name and email to the commit command.
Pull now also supports the specification of author name and email.
Removed limit on log.
Added verbose description to NoSuchElementException in GeoGitDataStore.

Saw this exception in one of the logs, adding a more verbose message in case we encounter it again.
Fixed an issue with caused push to generate an exponential amount of network requests.
Prevent duplicate commits from being processed in push and fetch.
Added a way to tell if there is a next page to go to with log through the web-api.
Added paging to Diff web-api command.
Merge remote-tracking branch 'origin/pr/347'