optics-core-0.3.0.1: Optics as an abstract interface: core definitions