My progress as of 2014-3-25.  Bugs exist, but I just wanted to get this
up here.