Move implementation to es6 modules
v0.4.0