Refactored JobsController

@huwr can you review this?

* Moved upload business logic into the Job model
* Added security checks
* Vendored load-image.min.js
* Added Job tests

Still needs some more work. We should aim to make banjo.getDatabase() private I think. :-)