Convert to idiomatic-gulp approach

The plugin now returns 3 streams:

* main stream which includes both css and image files
* "img" stream (only images)
* "css" stream (only css)

The code should still be backward compatible.

This fixes two problems:

1. Now the output can be piped into other plugins.
2. In the previous technique gulp can never tell if the task has
   actually completed because it doesn't have a stream to test.

   See orchestrator's runTask for more information:
   https://github.com/orchestrator/orchestrator/blob/master/lib/runTask.js
What was the decision for moving to `through2` over `Writable`? They seem to have the same amount of code to get the same job done.