SharpKeys is a utility that manages a Registry key that allows Windows to remap one key to any other key.
MS-PL License
An application which switches typed text as if it were typed with another keyboard layout