Make graduate.sh commit filtering more correct

Current version of graduate.sh have a series of drawbacks:
a) it rebases all commits to one straight line, which not only isn't
correct from history pov but also can introduce merge conflicts during
rebase (suggesting to finish script's work by hand);
b) it loses Comitter and Commit Date info overwriting it with Author and
Author Date correspondingly;
c) it runs expensive git-filter-branch 3 times with 3 different filtes
while it can handle them all at once.

This commit introduces following changes:
a) 3 filters are applied by git-filter-branch at once;
b) proper detection of all roots of files we need to keep (there can be
more than one);
c) keeping all commits along with their merge commits in order they were
in original repo;
d) as a side effect of doing all dirty work in filter-branch, all
metadata in commits is saved, and different runs of the script with the
same initial data provide the exact same results (all hashes are the
same).

Change-Id: I7313c36b41fa92b81432d33290b7efd960e6cca6
Specify namedtuple_as_object=False when using simplejson

This makes namedtuple serialization consistent with non simplejson case.

Closes-Bug: #1356173
Change-Id: I360ed265e18a793fa7ccbcb340cd75fc19ad607b
Merge "Specify namedtuple_as_object=False when using simplejson"
Merge "Make graduate.sh commit filtering more correct"
Set stevedore log level to WARN by default

Our *-api logs are very big right now, with a good chunk of the logs
coming from stevedore. Since we aren't trying to debug stevedore and it
just works for us, set it to INFO Log.

Change-Id: I5e3ac71dda2e70a623a585a7e014f1404ee23760