Add `build_dependent_order.rb` to compute rebuild ordering.
Add `build_dependent_order.rb` to compute rebuild ordering.

This change adds a new Ruby program called `build_dependent_order.rb`
which can be used to determine a build ordering of all packages
dependent on a given package identifier.

For example, if one needed to determine which packages need to be
rebuilt if a new release of the `core/openssl` package is published,
then the following would yeild a list:

    find . -name plan.sh | ./build_dependent_order.rb core/openssl

To get a complete list for Habitat core packages, a similar invocation
would have to be made from a parent directory containing git clones of
both `habitat` and `core-plans` repos:

    find . -name plan.sh \
      | ./core-plans/build_dependent_order.rb core/openssl

Signed-off-by: Fletcher Nichol <77a0fd9e8048bbacd11af4e957bc6ff03b549f49@nichol.ca>

be-plans/be,be-plans/be,be-plans/be,be-plans/be