Change existing argument lists to ArgList

In several places we were using vector<string> to represent
an argument list.  Change these to ArgList.

Pass ArgList around as an rvalue reference to get value semantics,
similar to how we were using vector<string>.  Passing pointers or
unique_ptr instances has the sad side effect of passing nullptr
when the argument is constructed like {}.

Bug: 24505488
Test: unittests pass

Change-Id: I16c9862742ccb881df356e1cf321451dab7c4a25
4 files changed