Added utilities for alt dns names - REVIEW ONLY

* Able to add extensions to a CSR
* Added utilities to create an Alt. DNS names extensions

This PR is for review only so people can start taking a look at it while I write some tests.
Is it possible for `getAttrValues()` to return null here?  Should we check for that first before dereferencing it?