Add code in to prioritize eviction of pages that are larger
than a certain threshold. This avoids taking a performance hit
when a huge page needs to be reconciled.
Update eviction server to work even if there is only one candidate.

Also some other changes related to evicting large pages.
Add a comment.
Never force internal pages to be evicted.
whitespace cleanup
Merge branch 'develop' into evict-large-pages
Fixes to large page eviction based on review feedback.
whitespace
Merge branch 'develop' into evict-large-pages

Conflicts:
	src/btree/bt_evict.c
	src/include/cache.h
Update the forced eviction of large pages.

The application thread adds a page to the eviction list and wakes the
eviction server. When the eviction server is woken it attempts to evict
the first page.
Fix forced eviction to continue if a page is unavailable.
Merge branch 'develop' into evict-large-pages
Ensure that we don't leave pages locked when removing them from the
eviction queue.
Add a new memory_max_page configuration option.

Also update large page eviction as per review comments.
Forcing memory_page_max to be smaller than cache causes more problems
than it solves. Remove the check.
Add a forced eviction mode that uses a new page state, instead
of re-using the locked state and tracking other information in
the eviction server.
Merge pull request #428 from wiredtiger/evict-large-state

Add a forced eviction mode that uses a new page state.
Reorder an CAS operations to prioritize more likely code path.
Fix some races in forced eviction:

* only try to force eviction of ordinary pages in memory
* lock the page before trying to queue it for forced eviction
* protect the cache flags with evict_lock in the eviction server
Don't deadlock just because a checkpoint is in progress.