objects changed to prototype-style in libs/optics.js