Keyboard updates

modified how the keyboard is generated.
base needs further modification to handle rotated keys.
need to add in a way to adjust per row/col the spacing inbetween keys.
Figure out a way to smooth the model between keys.