make it work; make it fast
stomp Alex's changes (they're on a different branch now)