No U Turn Sampler

Implemented the [No U Turn Sampler](http://arxiv.org/pdf/1111.4246v1.pdf) as [`NoUTurn`](https://github.com/pymc-devs/pymc/blob/nuts2/pymc/step_methods/nuts.py). I did a very straightforward implementation of Algorithm 6 - Efficient No-U-Turn Sampler with Dual Averaging.

It seems to be working well on the stochastic volatility model (not surprising since its one of the examples in the paper). It even reduces the sampling time by about half.

Since NUTS seems to work pretty well for Stan, should this be the new default and convert the examples using HMC to NUTS?

Still needed: 
 - [x] Tests
 - [x] Docs