Generalize the cursor "overwrite" configuration to apply to insert, update and remove.  Default to true, so LSM is no longer a special case.
refs #512
whitespace
typo
If overwrite is the default, do the cheap test first, testing to see if
the cursor referenced item is valid is a more expensive test.

Fix a comment.
cursor/cur_std.c: In function ‘__cursor_runtime_config’:
cursor/cur_std.c:402: warning: unused variable ‘ret’
lsm/lsm_cursor.c: In function ‘__wt_clsm_open’:
lsm/lsm_cursor.c:1065: warning: unused variable ‘cval’
Check all of the combinations of record exist/not-exist and overwrite
on/off for the insert, remove and update methods.   Add an LSM test,
it has a different code path.
Add an upgrading section on the new overwrite configuration semantics.
Minor edit to the upgrade wording for the overwrite API change.
refs #512
typo
Merge pull request #512 from wiredtiger/overwrite

Make "overwrite" default true and apply consistently to insert, update and remove operations.