[WIP] Moving node validation from JL-Doctrine-DBAL to Jackalope

As suggested in the comments for this code in the doctrine-dbal implementation, this PR will aim to move the node validation to here.

The validate method currently also adds additional node operations (e.g. for node autocreate) to the transport, so I think it should probably be renamed / refactored.
I decided to refactor the doctrine-dbal implementation to pass an ArrayObject here rather than a non-referenceable array.