First pass at custom keyboard.
Updated .gitignore
Merge branch 'keyboard' into keyboard2