prelim adaptation; committing so as not to lose work as we play with libphutil
make compatible w/ arcanist via libphutil