Remove self.write and use print instead, now that print redirects to the console instead of stdout
Add 'update' object to Python console commands
Change firmware_update_view to update_view
Uncomment NAP firmware update. Was commented out for testing.
Remove stream passed to UpdateView now that it's just using print.
Remove second unnecessary instantiation of SettingsView in console.py.
Allow UpdateView thread to run multiple times.
Handle struct unpacking errors in ListenerThread without exiting.
Program addresses in reverse order so that lowest address, which
STM uses to validate application, is programmed last.
Handle OSError from port not existing specifically, handle other
unexpected errors gracefully. More descriptive print while waiting
for device to be plugged in.
Don't use unnecessary function to point to settings, just assign directly.
Increase console width to accomodate new tab.
Refactor UpdatePrompt out into it's own file, callback_prompt.py.
Refactor UpdateView.run. Add IntelHexFileDialog to allow user
to select hex file to update Piksi flash with. Add list of
restricted sectors to flash.py for each flash, raise warning
when attempting to erase one of these sectors.
Remove return after general exception handling in ListenerThread,
was causing the system to freeze. Remove specific handling for
struct.error as general except now handles this in the same way.
Embedded text console for update status messages.
Change placement of UpdateView components