bugfix flash to at32uc3 user page, add basic st support

There are multiple patches rolled into this pull request because many were created before dfu-programmer migrated to github.  These patches include:
 - bugfixes relating to flashing to the user page for at32uc3 devices
 - updating and streamlining the commands for interacting with dfu-programmer
 - adding a progress bar on flash and read
 - adding ability to output a device read formatted as a .hex file