fixed some functional inconsistencies; added shift key control