CPP-102 - SSL

I'm curious why these base classes are templated instead of abstract base classes?
I feel like ABC would simplify specialization decls, and obviate the need for casting and pass-through functions