Add more validation support

Introduced
- validation builder
- validating function adapter
Changed the NodeMethodsImpl
- split into 2 classes RenameNodeImpl and MoveNodeImpl
- added validation, using the validation support classes