Keyrevisions can be changed

Hi,
This gives the user the ability to change the keyrevisions. I have not implemented the other UI changes yet. Once this is reviewed, I will get to the other necessary changes.

Thanks.
why is this implemented this way?  do we need a (function(){...})?  also you have a 8 space indentation there.