Trying to implement basic functionality, rm cruft