Node edit command

This is a PR for a new command which enables nodes to be edited as a whole, and replaces the `node:property:edit` command (the `node:property:set` command still exists however).

Example:

````
PHPCRSH> node:edit cms/products/product1
````

Will open an editor with the following:

````yaml
cost:
    type: Double
    value: 12.13
weight:
    type: Long
    value: 10
size:
    type: String
    value: XL
name:
    type: String
    value: 'Product One'
'jcr:primaryType':
    type: Name
    value: 'nt:unstructured'
tags:
    type: String
    value: [one, two, three]
````

It also supports a short syntax when creating nodes:

````
'jcr:primaryType':
    type: Name
    value: 'nt:unstructured'
foobar: barfoo
barfoo: foobar
````

You can then edit, remove or add properties as required.
ah sorry, did not read enough context. hm, in jcr you have not only Property but also Value. setting a Property to a different Value object would most likely change its type as well. maybe PHPCR is missing a method here, indeed. could you open an issue about this on phcpr?

the other thing should really not happen. https://github.com/phpcr/phpcr-api-tests/blob/master/tests/10_Writing/SetPropertyTypesTest.php tries out such cases. do we have the example you mention? is the problem also occuring with doctrine-dbal?