#57 Test suite + Grunt + SauceLabs integration

Resolves #57