Allow supplying tiggers other than the input

This allows a user to use something other than a default browser file input, e.g. a button.

A common thing to do in HTML5 apps, is to hide a file input and show a custom trigger element which does `fileInput.click()` on click.

However, due to flash security restriction since v10 it is impossible to manually trigger FileReference browse dialog. The workaround, then, is to place the swfobject above the trigger element. This pull request adds support for specifying custom trigger elements.