Throwing an error object vs. a string

Changed plugin to throw an `Error` object instead of a string.

Status: **Ready to merge**

Reviewers: @tedtate @kpeatt 

## Changes
- changed throws to use an Error object instead of a string

## How to test-drive this PR
- checkout branch
- `grunt test`