refactored, havent tested yet
tests
tests pass
docs update
docs update
docs update
docs update
Merge pull request #4 from azuqua/refactor

Refactor