Let AWSBoxen::BuildScript boxen run multiple build scripts in series.

This makes it a bit easier to share common functionality between different
boxen.  But it's starting to get to the point where puppetizing things may
be easier than not.
Don't rebuild AMIs if we know that their contents haven't changed.

For BuildScript based AMIs, this means we only re-build them if the script
itself has changed, not if there have been unrelated changes in the repo.