R509::ASN1::GeneralName improvements + docs

* Fixed GeneralName creation so it creates an R509::Subject when passing
  a dirName
* Added tests for creation of GeneralName objects via hash.
* Removed a bunch of pointless @private statements in the docs
* Started updating the readme (WIP). Removed all extension YAML docs.