clean up off() and add tests
minor cleanups & clarifications