Optimized EnhancedClass.caseValue(String) to use a cached map.
Updated EnhancedMethod.apply to throw MissingArgumentException instead of RuntimeException if a required value is missing.