More page coverage and a few changes to page.py

This test needed a bit more coverage to test the various link, images,
and email form at the bottom.

I replaced the existing functions to gather links/images with
explicitly declared elements and locators. I think this is probably a
better approach since we want to test against what we expect to be
there, not what is actually on the page.

I added a function that allows you to select options in a select drop
down menu since it takes a few lines to accomplish that.

I updated the `get_response_code` function so that it returns a timeout
http response. I noticed that http://getmockery.com/, one of the links
on the page, never loads and was causing the test to get stuck because
it can't handle a timeout.