refactored init
added keystrokes
found way to singleton base