Started Monolith, implemented runtime type checking and polymorphic type-based pattern matching