On timeout, call the callback with an error

Previously timeouts were being treated as a critical error and therefore
`process.exit()` was being called. This would prevent the Grunt task
from ever failing. The fix is to make timeouts be non-critical, allowing
the application to handle errors properly.
Merge pull request #30 from bitovi/grunt-exit

On timeout, call the callback with an error