Exposed `shapes` in the documentation

so that we can enforce the direct usage of `shapes` rather than the
`getShape()` function