Some improvements

- refactored constructor, it now accept an opts object, instead of a list of params
- added some more tests
0.0.3