not actually implementing the TODO we had, but fixing bugs we should have been tracking