paginated list pages should share last_modified

The last modified of all members of a paginated list should be the last
modified of the most recent document in that list, since every page has
to be modified in order to push everything down in the list.

last_modified needs to be accurate because we give it to search engines
for them to reindex our site.

Fixes #125
add test_constructor helper function

The test_constructor helper allows me to quickly test that required
attributes are required and default attributes are set to something
resembling the right value.

In the future I want a better declarative syntax for expressing the
coercions that should be available, but for right now this saves a bunch
of typing.

Fixes #132
add test_pages helper function

This is a better way to test pages than the Blog has, copied from the
Plain and Perldoc tests.

Fixes #132
cleanup blog tests

Instead of testing the Page objects, test the final, generated content
in the app.

This means the site doesn't have to test the content, so I removed those
tests.

This also tests the blog as close as we need to the actual theme.

Closes #133