add stm32f4 to device table, command list comment

- device is recognized, but command fails
- list of command requests available in dfu-device.h
implement device erase and launch

- only mass erase has been implemented (which is very slow)
- only launch from default start has been implemented (need set
  address command to launch from random address)
move all buffer mgmt into intel_hex

- same buffer mgmt should work for atmel & stm programs
bugfix when bootloader size is 0
update commands to work with st and atmel
begin code clenup for st module
move prep buffer duplicate into intel_hex.c
add internal getstaus and select address
flash write working
update read function, but dfu_upload fails
begin debug for read operation

- update read block function to take buffer directly
- add read configuration (although it doesn't work)
NOTE:
- memory address are specific to stm32f40 devices
auto-erase sectors with data when force not set

- normal flash operation is to erase the sectors where data resides
- force can be used to overrride this operation
add read unprotect and erase page commands

- still need to tie read unprotect to a flag so it can be called
add quiet flag to read unprotect