Implement key changes. closes #47