more refactoring, down to minimal errors, still need to gut out main console simulator