first commit of keyinfo library. not yet functional.