Support protecting action=create/upload

This patch makes it possible to protect creating a page or uploading a file.
For APISite.protect(), the prototype of the function is completely changed.
However, the function is used internally, so there should be no problem.
For Page.protect(), although it might be considered a breaking change since
parameter "create" and "upload" are inserted between the old parameters,
it is unlikely anyone will be affected negatively because most people would call
this function by specifying keyword argument. This change therefore should not
be problematic.

Besides this, I correct/elaborate docstring. I also change my name in CREDITS
to my preferable name.

Change-Id: I595228ea9a61f7e55dc14f8c3682494c8938cb1e
Merge "Support protecting action=create/upload"