Make the library a bit more flexible internally.
Merge pull request #2 from eightyeight/internal

Make the library a bit more flexible internally