refactor pagination model

When looking at https://codeclimate.com/repos/52330269f3ea006d790604fa/Project we observe that there are a lot of duplicated `:like` scopes in various OpenProject classes.

Those scopes were moved into the `Pagination` module. Also the `search_scope` methods now only needs to be defined if it differs from the default implementation.