Refactored a bunch of stuff to use fobj