Small refactors, improve test coverage
Prefer #bind over self = this
Bump version to "0.4.0"