Shapes Sample example of clean architecture application. Mutlimodule project structure. Modules by architecture layers. Kotlin alternative to the Visitor Pattern. See: ShapeExt.kt SelectorExt.kt