add plugin interface
improve, document and export lenses
more lenses