Improved type inference for Simple optic construction [PR]

I must've forgotten to submit this as a pull-request.

Changes suggested in #91 are applied.