Grunt optimisations

- Using 'grunt-newer' to only run tasks when the files actually change (not just on save)
- Use 'load-grunt-tasks' to load each requirement from package.json (more efficient)
- Remove SSH deployments (unused, clunky)