Added purge option and refactored clean.

  - Clean now only removes the *build* directory.
  - Purge removes the entire sandbox.
Added dependencies between build *stages*.

This eliminated the need for an *all* option so that was removed as
well.
Add check to allow virtual packages to ignore stage dependencies.

Virtual packages only need implement the *merge* stage.