Snoc

Snoc is a typeclass that defines a Prism between an S and its init S and last S.