Rewrite/Restructure adapters

Rewrite adapters of common types to inherit from base classes