Refactor, add benchmark and grunt.
Bump version.