Adding maxTimeout setting and onTimeoutError for webpage

When requesting a page using page.open() there is no way of setting a maximum timeout.

I added a setting so you can use page.settings.maxTimeout = _integer_ ms. If the request times out it is aborted. The event can be caught using page.onTimeoutError.

This was discussed here: https://code.google.com/p/phantomjs/issues/detail?id=1129