BROKEN COMMIT -- this should be a stash, but I don't like using stashes for indefinite amounts of time. So I'm intentionally committing unfinished code here.