Fix for case when not using div class control-group

The current code assumes that the input (and its label) are wrapped in a div with class control-group. This is a pretty standard structure for forms in twitter bootstrap, but it's not mandatory. See the 'Default Styles' example at http://twitter.github.io/bootstrap/base-css.html#forms, or indeed the example HTML in https://github.com/markusslima/bootstrap-filestyle/blob/master/README.md

This patch uses the control-group div if it's present, and otherwise creates a new parent div in which to wrap the file upload input.