cluster tool first commit.

cluster reads a set of *-summary files, and tries to group
makeflow rules according to their resource usage.
Adds command line options to cluster.
Implements the clustering stack.
Basic clustering works now.

report_cluster needs to be rewritten more clearly.  It modifies
the information it reports, which it is not very nice.
Added function to collect the summaries of a cluster.
Writes the rule numbers of a cluster to the final report.
Adds number of clusters as a command line option.
Merge branch 'master' of github.com:cooperative-computing-lab/cctools into resource-profiles
Ignore files generated during compilation.

This decreases the frustration using git by hiding all of the files that
should not be committed to the repository.

The first step was to add the common files with obvious extensions e.g.
`.o`. Next I dumped the results of git status into `.gitignore` with
`git status | tail -n +5 | awk '{print $2}' | head -n 52 >> .gitignore`.

This file will need to be modified in the future if new compilation
units are introduced.
Prints the rules of a cluster in ascending order (broken).
Adds ignored files that are not produced in Darwin.
Copies svn:ignore to the corresponding .gitignore file.
Added some comments to the main cluster algorithm.
Refactored the collection of summaries in a cluster.
Fixes the sort of rule numbers in a cluster.
Refactored reporting functions.
Automatically generates the gnuplot command for stacked
histograms.
Small fix for generating the correct number of specified
clusters.
Adds gnuplot script to plot the clusters as histograms.
Clusters are added to each level in the same order as the
previous level.