Exclude basic form params from pagination links

Even though the basic form params will be blacklisted, other params
submitted from a form still gets appended to the links. However, there
is no good way to detect what should be excluded and what shouldn't. If
a particular parameter(e.g. params[:user]) should be excluded, the
example below could be a workaround:

    paginate @users, params: {user: nil}

fixes #131. fixes #182
Use NextPage/PrevPage class in link_to_next_page/link_to_prev_page

So these methods will generate consistent urls with `paginate` method.
similar impl to #424 but no fix for `#rel_next_prev_link_tags`.

Note that this change will introduce the behaivor explained in 2fd7d36b72af73d2506f8e2ab68704d804f70fc5.

fixes #124.