Initial refactoring
Update README
Do proper checks against length
Remove useless tests folder
Check for required args
Use proper deferred returns
Add initial tests
Moar

+ Update comments
+ Add a couple of tests
Merge pull request #8 from kaimallea/refactor

Refactor code