CE-1125 ImageReview refactoring - Prologue

This PR contains:
* Use Vignette as a thumbnailer
* Logging an action performed on every image
* The beginning of a code separation (hooks & db queries)
* Some documentation

Pinging @Grunny @macbre and @nmonterroso  due to Vignette changes
This and the function above (`fromFile`) should be unified. They are virtually identical. I think an interface would make sense here.

That suggests that `GlobalFile` may need to be refactored a little to look and act more like a file (e.g. add an interface with the common methods then add that interface to both `File` and `GlobalFile`) so that these two objects can be used interchangeably with vignette.

This appears to be related to this [ticket](https://wikia-inc.atlassian.net/browse/PLATFORM-634). Someone somewhere is passing a `GlobalFile` to `fromFile` above.