Building a custom distance function for typographical errors - particularly with the QWERTY keyboard