add oauth check if users.get_current_user() is None

* user logging
FIX KeyError on req.POST['preview']

* preview should not be mandatory
add oauth to models.py
Merge oauth-current-user to 'master'

* adds oauth response to appengine server
extract user_is_admin(user) as a function

* does both `user.is_current_user_admin()` and `oauth.is_current_user_admin()`
* probably should be somewhere else?
make test pass after oauth merge

* need to logout OAuth user when checking auth
  * by default oauth recognizes as 'example@example.com' in dev mode.
* test_handlers.RevisionTest didn't have `self.testbed.deactivate()`
* lot of tests didn't have `self.testbed.init_user_stub()`
add more powers to run_tests

1. can run any kind of names:

		python run_tests.py lib/google-app-engine tests.test_handlers
		python run_tests.py lib/google-app-engine tests.test_handlers.WikiPageHandlerTest
		python run_tests.py lib/google-app-engine tests.test_handlers.WikiPageHandlerTest.test_post_new_page_should_fail_if_user_is_none

2. can run any combination of test suites:

		python run_tests.py lib/google-app-engine
			tests.test_handlers.RevisionTest
			tests.test_handlers.WikiPageHandlerTest.test_post_new_page_should_fail_if_user_is_none
test behavior for current user and is_admin_user

they're actually scattered away, for now.

  * `views.WikiPageHandler._get_cur_user`
  * `models.is_admin_user`

probably put it in one place...