Allow a subset of projects to be built

A list of projects can now be given as command-line arguments

Change-Id: I3f8633c73585e75c81f0cb56d56903acd456789d
Avoid using parentheses to preserve the current directory

This enables error checking to work correctly in bash 3. Although
Ubuntu has had bash 4 since lucid, Mac OS X still has bash 3.

Change-Id: I6903b468b47ecce377e986cba7950207d51e820e