Add `dimap` to Profunctor

Example:

    scala> val example = (((_: Int) + 1) dimap ((_: MyInt).a, MyInt))(MyInt(100))
    example: MyInt = MyInt(101)