Adding Client Cert authentication support.

This pull request adds client cert authentication support.

I need to continue with some subsequent subsystem changes but subsystem is not currently buildable.