Upload: refactored a bit.
API: use `data.*.url` instead of `*.url` to display images.
API: use `shared` class instead of `multiple` for `form`s.
Refactoring: options parsing & defaults.
Refactoring: separated into several files.