Merge remote-tracking branch 'upstream/master'

New stuff from upstream
Merge remote-tracking branch 'upstream/master': new changes and merged features
Moving certain classes outside of bitmessagemain.py
Merge remote-tracking branch 'upsteam/master' into splitting_bitmessagemain
Split off some bootstrap and startup helper functions into their own files
Placed repeated inbox and sent SQL operations into appropriate helper functions
Split off a few generic functions and Bitcoin related functions in seperate helper files
Fixed missing arithmetic import in helper_bitcoin file
Seperated out class_addressGenerator - not perfectly
Reworked translate function to be more accommodating
Fixed translate functions not being found as they were being defined after the QT GUI was started
Fixed capitalization of Application Support, which causes problems for people with a case sensitive OS X file system
Fix bugs in githup pull request #238
Added icns with transparency
Seperated out class_singleWorker (POW thread)
Merge pull request #242 from Atheros1/master

Modularize PyBitmessage into multiple files
Seperating class_singleListener, class_receiveDataThread, class_sendDataThread
Seperating out all peer networking classes and merging with upstream
Fix issue #246
Merge pull request #247 from Atheros1/master

 Fix issue #246