Implement keyboard row/column scanning. Fixes #52