Allow more than 256 pre-defined properties in a built-in JS object.
Previously, properties were only supported via the TinyID mechanism in the JS API. This limited the properties to have a unique signed 8-bit integer ID, which prevented more than 256 properties from existing in a built-in object. The id value can be a name however, a TinyID is not required. For property descriptions with an ID outside the range of 8 bits, define them using just the name. When this is done, the getter and setter functions will need to convert the names to an ID themself. This isn't ideal... ideally, each would have a unique getter and setter, but doing it this way puts of requiring an internal JS API refactor and allows the CryptCert class to have all the defined properties. As implied... CryptCert now supports all properties, and JS Docs will be created for them. This section is yuge!
Showing with 494 additions and 26 deletions