Pre-validates JCR paths for invalid namespaces

- Adds FedoraInvalidNamespaceException type
- New FedoraInvalidNamespaceExceptionMapper
- Modifies Service to add new validatePath method
- Call validatePath from AbstractService.nodeExists function
- Fixes Unit Test that require a mock NamespaceRegistry

This resolves https://www.pivotaltracker.com/story/show/61500426
Added unit test and integration tests to NodeService and DatastreamService.
Pre-validates JCR paths for invalid namespaces

- Adds FedoraInvalidNamespaceException type
- New FedoraInvalidNamespaceExceptionMapper
- Modifies Service to add new validatePath method
- Call validatePath from AbstractService.nodeExists function
- Fixes Unit Test that require a mock NamespaceRegistry

This resolves https://www.pivotaltracker.com/story/show/61500426
Added unit test and integration tests to NodeService and DatastreamService.
Still fixing the rebase blunders.

- Remove integration tests where function replaced with comments
- Added new integration test for exists() function.
Fix abstract class function definition.
Removing from Service class, and making private in AbstractService class.
Merge branch 'topic-61500426' of https://github.com/whikloj/fcrepo4 into topic-61500426

Conflicts:
	fcrepo-kernel-impl/src/main/java/org/fcrepo/kernel/impl/services/AbstractService.java