Initial commit.
Adding some tests, still working on API