Clean up the script for plotting results.
Add benchmarks and adapt to most recent simd branch.
Clean up benchmarks.

I've purged a bunch of old implementations. The vector library fold is now the
"winner," so no need to keep others around.
Check in version used for PLDI submission.
Add targets to create figures used in PLDI submission.
Add version of RBF benchmark that uses BLAS and creates an intermediate vector.
Add alternative rbf implementation.
Adapt for new vectorizer.
Adapt to most recent version of the primitive library.
Get rid of package imports.
Abstract away from the particular Vector implementation we use.

This allows us to switch between Data.Vector.Unboxed and Data.Vector.Storable by
changing a single #define.
Add Eigen, Blitz++, Boost, and SALT Rbf benchmarks.
Use unsafe foreign imports.
Add Eigen and SALT implementations of rbf with some user abstraction.

The SALT implementation is new. The Eigen implementation has been renamed and we
now tell Eigen that vectors are properly aligned.
Use dnrm2 in the BLAS rbf implementation.
Update DPH implementations for the new vectorization pass.
Make random vector generation more imperative :)
Clean up argument processing
Use aligned ForeignPtrs for benchmarking.

We were being naughty before by using GC-allocated memory that might not be
properly aligned for SSE access. We got away with this by allocating vectors
that were at least a page in size, but this prevented us from benchmarking
shorter vectors.
Clean up timing framework.

 * Allow both wall-clock (for parallel stuff) and CPU clock (for sequential
   stuff).
 * Add warm-up iterations to warm up the cache.
 * Use high-resolution timers on both Linux and Windows.