REST transactions: error handling.

o Serialize stack trace for internal errors.
o Reorganised error codes.
o Renamed Neo4jError subclasses to match StatusCode names.
o Renamed Neo4jError.Code to StatusCode.
o Stop Neo4jError extending java.lang.Exception.
o Explicit functional test for response format for cypher syntax errors.
Centralizes StatusCode messages

o Introduces StatusCodeDescription for StatusCode messages
o Removes subclasses of Neo4jError
o Fixes license headers
o Removes 'Concurrent' from InvalidConcurrentConcurrentTransactionAccess
Merge pull request #716 from apcj/2.0-rest-transactions

REST transactions: error handling.