Add a wp_page_numbers() function to display n pages by increments of 1 and m pages by increments of x. It should also tell you what page you are currently viewing and how many total pages there are.

The result of the function could be (if n=5, m=3, and x=5):

Page 2 of 33 < 1 2 3 4 5 .. 10 .. 15 .. 20 .. 33 >

This is a rough idea, but I'm sure it could be cleaned up and styling added to make it quite versatile.

See: http://www.jenst.se/2008/03/29/wp-page-numbers/ for an example.