grunt, npm and test
merge
more improvements