Enhanced generic implementation
Added comments
Default to class implementation
Added custom map handlers