Major improvements

- Dependency checking improved
- Constructor now accepts an array
- Added register method
- More test coverage
0.2.0