reformat to be more c++11-y.  currently does *not* interface with tbc et al