We had three pretty redundant components all doing file upload. This PR refactors all of the usages to use FileInput, which was the most flexible implementation (thanks @vedadehhc!).
Also because I couldn't help myself: changes the time series interface's ADSR form to use values from 0 to 100 in steps of 1, rather than 0 to 1 with steps of .1.
We had three pretty redundant components all doing file upload. This PR refactors all of the usages to use FileInput, which was the most flexible implementation (thanks @vedadehhc!).