Removed UUID dependency, refactor.

Implemented an UUID (v4) and refactored (made keyPath better handling arbitrary paths).