i18n-ru: prompts fixed
simplemerge: remove dead code

The following functions in simplemerge are dead code. I reran "make
test-merge*" after this change, and it passed. Looks like cruft that
we've been carrying since we nabbed this code from bzr.
strip: remove -b/--backup codepaths

cset ba3bc6474bbf has removed this option. This commit just tidies the
code that was associated to it. It also fixes the internal calls to
the strip() function.

Before this change, any function that thought it would want as a final
safety to keep a partial backup bundle (bundling changes not linearly
related to the current change being stripped), had to explicitly pass
a backup="strip" option. With this change, these backups are always
kept in case of an exception and always removed if there is no
exception. Only full backups can be specified with backup=True or no
full backups with backup=False.
check-commit: spot growing whitespace

We discourage PEP-8-style double blank lines, spot them creeping in.
whitespace: nuke triple blank lines in **.py
test-check-commit-hg.t: automatically test all 'draft() and ::.' changesets

We introduce a test-check-commit-hg.t file that will happily run the
check-commit file on all draft changeset under the working directory.

This should help newcomers to catch up with the rules. (And will helps old timer
from time to time).
pull: pre-filter remote phases before moving local ones

We were relying on the phase internals to filter out redundant phase
information from remove. However as we plan to integrate phase
movement inside the transaction, we want to avoid useless transaction
creation on no-op pulls.

Therefore we filter out all the information that already matches the current
repository state. This will let us create a transaction only when there is
actual phase movement needed.
phase: add a transaction argument to advanceboundary

We now pass a transaction option to this phase movement function. The object
is currently not used by the function, but it will be in the future.

All call sites have been updated. Most call sites were already enclosed in a
transaction for a long time. The handful of others have been recently
updated in previous commit.

The retractboundary function remains to be upgraded.
phase: add a transaction argument to retractboundary

We now pass a transaction option to this phase movement function. The
object is currently not used by the function, but it will be in the
future.

All call sites have been updated. Most call sites were already enclosed in a
transaction for a long time. The handful of others have been recently
updated in previous commit.
test-patchbomb.t: work around Python change d579866d6419 (issue4188)

Python 2.7.7 and later (as well as some ubuntu/debian packages of
2.7.6) include a fix that makes the email module more pedantically
correct for MIME boundaries, but this breaks our tests. We work around
this by filtering the output of any 'hg email' invocations in the test
that produce MIME messages.
memctx: create a filectxfn if it is not callable

This will allow future patches to construct a memctx based on another context
or any other store-type object.
workingfilectx: add remove and write methods

This patch will allow abstracting localrepo.remove / write method to refactor
working directory code.
memfilectx: add remove and write methods

Similar to the previous patch for workingfilectx, this patch will allow
abstracting localrepo.remove / write method to refactor working directory code
but instead operate on files in memory.
memctx: add note about p2
i18n-ru: update 'revsets' translation
i18n-ru: update 'revisions' translation
i18n-ru: sync with ad56fc55cbc3 (missing strings)
i18n-ru: sync with ad56fc55cbc3 (fuzzies)
merge with i18n
i18n-ru: syncronized with 45a01832cad1