Split up build tool resources and added gulp support

Adds support for Gulp

### Changes

* Split up build tool resources in /root dir
* Added gulpfile
* Added package.json specific to Gulp dependencies

### Testing

* Create a new project by duplicating files and placing gulp files in project root
* Run `gulp:dev` to create dev assets
* Run `gulp build` to create dist assets
* Run `gulp watch` to create a watcher with LiveReload

### Review

@germanny 
@ericrasch 
@jameswlane 
@weeirishman 

### Notes

* I have an update to the generator queued up for testing but wanted to get this out there first. Luckily the generator doesn't copy root files so updating with these changes will have no affect on the current generator version.
* I prefixed non-required variables with an underscore to make it easier to discern one from the other. Open to a discussion if this is a good idea or not.
Ok... the correct call is `del([_dist_dir + '/**/*']`. This will remove all files/folders within `dist`, but not delete dist itself.

My complete line looks like this... with an added callback for gracefulness:

```
  gulp.task('clean:dist', function(callback) {
    del([_dist_dir + '/**/*'], callback);
  });
```