Added unit tests and fleshed out API
Wired up unit tests