WIP: rewrite rigorous unit tests for `Core.Tree`.
Some fixes and add test for copy constructor.
Some changes at the same time.

- Add implicit cast operator for `NodeHandle` class
- Simplified syntax in implementation wherever possible by taking
advantage of the implicit Cast operator.
- Disable some methods to debug.
- Added some tests for copy constructor and swap methods.
Fix compilation issue.
Quiet down compiler warnings.
Merge pull request #157 from DO-CV/maint-test-core-tree

[MAINT] Add unit tests for `Tree` data structure.