Make scoped_message_writer free functions inline
Remove whitespace
Fix Windows data dir path
Modularize daemon

This commit provides wrapper classes for the core components which are
now invoked from the t_daemon class.  main.cpp mostly just handles
command line options parsing.  daemonize.h provides an interface that
should be implemented by platform-specific cpp files (e.g.,
posix_daemonize.cpp).  cpp files starting with posix_ are now ignored on
Windows, and those starting with windows_ are ignored everywhere else.
Windows service implementation

So far start/stop/backgrounding are working, but logging is not.
Backgrounded daemon seems responsive after minimal testing.  For now
bitmonerod.exe must be manually run as administrator in order to detach.
Service can also be stopped via the service manager.
Make Windows data dir accessible to all users
Move core daemonize logic back to main
Windows service wrapper now writes to log
Remove dead windows service code
Improve doc for windows/posix daemonize