Moves status codes into kernel.

 o Each kernel exception now has an associated status code.
 o The transactional endpoint attempts to unwrap kernel exceptions and
   return their status codes. This resolves an outstanding issue with
   constraint violation error messages.
 o Remaining: Cypher exceptions should map to status codes as well,
   obviating the need to the complex exception mapper in transactional
   endpoint.
Merge pull request #1805 from jakewins/statuscode-kernel

Moves status codes into kernel.