Started figuring out how to manage bitcoind
Making progress on async bitcoind communication...
Getting ready to start testing bitcoind manager
I can't believe the SDM actually kinda works!

(Linux) It successfully creates the datadir, finds bitcoind, starts
the process, then monitors it and returns reasonable getSDMState()
values.  It fully sync'd testnet in a few minutes and looked like
it was ready to go!

There are still some issues needing to be fixed -- such as sometimes
it doesn't shutdown the process when Armory exits.  Probably a simple
Popen arg for that.  Also, will need to figure out file permissions
on Windows so that I can safely create a bitcoin.conf file for new
users that don't have one yet -- but it must be set with strict
permissions or it could open up a security hole!

The proof-of-concept is done.  Just gotta grind through the rest...
Taking picobit's suggestion, created guardian.py

It's very simple, but seems very powerful.  The idea is that when Armory
starts bitcoind in a subprocess, there's no guarantee bitcoind shuts
down when Armory hard-crashes (killed, segfault, etc).   However, once
it is started, Armory can grab its own pid, and the pid of bitcoind and
pass it to a separate "guardian" process.  If Armory doesn't shut down
bitcoind, it won't shut down the guardian either ... which will shutdown
bitcoind and then itself if it detects that Armory closed.
More code to handle bitcoind mgmt
Very slow progress on SATOSHIMODE.Auto
Added known public keys, rearranged some code
Nothing exciting...
Apparently blockRatio^8-vs-timeRatio is linear
Got GUI-->SDM-->LoadBlockchain.  It's a start!
Dashboard is getting better...still a mess, though
Finally the Armory restart dashboard 98% correct
New Armory settings almost complete
Settings adjustments seem to work 100% (in linux)
Got system details reported in log file now
Added jgarzik's jsonrpc variant... need to add license
Linux install instructions are slick!
Endlessly tweaking dashboard messages and settings
Guardian script in windows compiles...