Updates to Protos and addition of KeyVersionInfo annotation.

### Protos updated with comments from Shawn.
* Changed string type to enum Type.
* Extension numbers are now 10000 + (enum type number), as a convention.
* Removed IV from AES proto (and modified AESKeyVersion so it would work).

### KeyVersionInfo annotation for KeyVersions
* Allows other classes to obtain the proto type and proto class that the KeyVersion subclass uses.
* Currently used to help KeyVersions read/write protos.
* Required for KeyVersionRegistry later on.
* (Having overridable methods to provide this information is not sufficient.)

I wouldn't bother with jumping ids here. Just number them 1 through n. You can put the enums into the list in any order it doesn't have to be incrementing.

I often see people put a comment at the top of a enum or message definition that is called nextId for example
// nextId = 129