Move navigation from controller to a schema role

Functions to navigate through a resultset is factored out into a Moose
Role. The Botanist schema resultset consumes this role to provide
functions to get the first, previous, next or last row of a resultset.