Enclose artifact generation process into Makefile.

Completely decouple the build process from Travis and other things we
cannot control.
Include sample count and sum in Proto output.
Introduce histogram purging support.
Merge pull request #23 from prometheus/feature/summary/subtleties

Refresh of Histogram/Summary Behavior to Reflect Modern Expectations
Garbage file.
Replace Process consumer channel with Ingester.
Remove base labels.
Add formal fingerprint sets for intersection ops.
Merge pull request #26 from prometheus/feature/fingerprinting/set

Add formal fingerprint sets for intersection ops.
Code Review: Get rid of cruft.
Merge pull request #25 from prometheus/refactor/ingestion/signatures

Update the Consumer Signature
Add method to merge a LabelSet into a Metric with collision avoidance.

Colliding labels can happen e.g. when an exporter job is scraped and already
includes "job" labels for its samples in /metrics. In this case, a
collisionPrefix of "exporter_" is added to the colliding target labels, but the
specifics (the collision prefix) are managed by Prometheus, not the client
library.
Merge pull request #27 from prometheus/refactor/metric-label-merging

Add method to merge a LabelSet into a Metric with collision avoidance.
Include summary sample sums and counts if present.

This commit finally unlocks the ability for the Prometheus client
users of the Summary metric type to automatically get total counts
and sums partitioned by labels.  It exposes them through two
synthetic variables, if the underlying data is present.

The following is the base case:

    foo_samples{quantile=0.5}  = <?>
    foo_samples{quantile=0.99} = <?>

The following results with this change:

    foo_samples{quantile=0.5}  = <?>
    foo_samples{quantile=0.99} = <?>
    foo_samples_sum            = <?>
    foo_samples_count          = <?>

Change-Id: I75b5ea0d8c851da8c0c82ed9c8ac0890e4238f87