Streams update

Added support for streams and changed all returns to streams (buffers are a nightmare when the files get big). Also took out generateThumbnails for the time being. It needs some major changes and stream support that I don't have time for now.

@bsiddiqui @graysonc @leore 
For whatever reason I can't comment directly on getUUID but I don't understand why I decided to slice this down to 16 characters and take a sha1 hash of it. UUIDs are inherently unique so the obvious thing to do is just:
```
var getUUID = function () {
  return uuid.v4().toString()
};
```