Back to old API (with a twist)

Back to the old API. The file input is inserted on require. By wrapping in a `<form>` we can reset the file input, without reinserting the input every click. 

The benefit of this approach over the "new" API is that we can use a single `<form><input type="file"></form>` to power all file-picker's instead of having a form for each instance. 

Hopefully this will be the last API change.