update to support classes inheriting from Module
added cascade_types to configurations
partial cascade_type changes that probably will not be used due to complexities of inheritance