CBigNum: Convert negative int64 values in a more well-defined way

Since the minimum signed integer cannot be represented as positive so long as its type is signed, and it's not well-defined what happens if you make it unsigned before negating it, we instead increment the negative integer by 1, convert it, then increment the (now positive) unsigned integer by 1 to compensate
update Boost version to 1.49 for Windows in the Qt project file

- add -s flag as we also use a static build in makefile.mingw
CHashWriter that does SHA256 in-place during serialization
replace some ugly code in addressbookpage.cpp

- add signals signMessage() and verifyMessage() in addressbookpage.cpp
- connect to them in bitcoingui.cpp to switch to the corresponding tab in the Sign/Verify Message dialog
- make gotoSignMessageTab() and gotoVerifyMessageTab() private slots
Fix Qt build on OSX

Compiling boost::interprocess::message_queue against
boost 1.50 macports with -arch i386 (how releases are built,
for minimum download size and maximum compatibility) is failing:

src/qt/qtipcserver.cpp:37: error: no matching function for call to ‘boost::interprocess::message_queue_t<boost::interprocess::offset_ptr<void, int, long unsigned int, 0u> >::timed_receive(char (*)[257], long unsigned int, size_t&, unsigned int&, boost::posix_time::ptime&)’

This is probably a boost or macports bug, but since interprocess::message_queue
is only used for URI support, which isn't implemented on OSX anyway, I fixed
the build by #ifdef'ing out that code.
Merge pull request #1569 from Diapolo/addressbookpage

replace some ugly code in addressbookpage.cpp
Persistently poll for balance change when number of blocks changed

Fixes #1452. Until we can make the logic water-tight *and* are notified in every
case the balance might have changed, remove the premature optimization and
simply recompute the balance every half a second when the number of blocks changed.
fix for build.h regeneration failure when compiling on Windows

- as the "||" operator is not known to qmake use "|" instead,
  which ensures the code in brackets does never get executed on Windows
Translation strings update
Merge pull request #1580 from laanwj/2012_07_bitcoinstrings

Translation strings update
Merge pull request #1574 from Diapolo/pro-file2

fix for build.h regeneration failure when compiling on Windows
fix some recently added translation plurals
Merge pull request #1581 from Diapolo/trans_fixplurals

fix some recently added translation plurals
Reorder dnsseed list, Jeff's seed list is static so put it last.

Because new nodes pull from the first connected node the load
balancing of the first connection is more important than it should
be. This change puts Pieter's seed first, because its probably
the best maintained right now.
translation process file updates

- add part for handling of plurals
- update Transifex links
- small misc changes
Merge pull request #1497 from luke-jr/bugfix_neguint

CBigNum: Convert negative int64 values in a more well-defined way
Merge pull request #1584 from Diapolo/trans_proc

translation process file updates
fix a wrong string in signverifymessagedialog.ui
optionsmodel cleanup

- cleanup optionsmodel before adding new proxy options
- place SOCKS version stuff below proxy port (IP, Port, SOCKS version)
- simplyfy some parts of the code (e.g. don't check IP and port, as this
  is done in optionsdialog anyway, remove unneeded {} in switch/case)
- small cosmetic changes in the header for better readability
Merge pull request #1572 from Diapolo/optionsmodel_cleanup

GUI: optionsmodel cleanup