Made eris::Random::rng_t a noncopyable wrapper

Previously it was simply a std::mt19937_64 typedef; now it's a
noncopyable wrapper around that.  The point is to make sure the rng
never gets copied (if you really want to copy it, you can, by casting
to a mt19937_64 then copying), by statements like:

    auto rng = eris::Random::rng();
    // do things with rng

(which is now forbidden) instead of:

    auto &rng = eris::Random::rng();
    // do things with rng

(which is still allowed, and slightly more efficient when rng will be
used many times, as the rng() call also has to check seeded_).

Position::random was doing exactly this--and as a result,
creativity::Reader, which multiplied a random Position by a random
distance, was *always* moving to the right, since the first Position
coefficient and the random distance were drawn from two different rng's
with the same state.