First effort.
Fixed up tests.
Removed unnecessary thingy.
Merge pull request #6 from AshFurrow/abstraction

Abstraction