First commit
Removed previous implememtations so I can create my own.