Added unit tests and build grunt task