Import tf-random-0.5 as wip/hs-tf-random.

This package contains an implementation of a high-quality splittable
pseudorandom number generator. The generator is based on a cryptographic hash
function built on top of the ThreeFish block cipher. See the paper Splittable
Pseudorandom Number Generators Using Cryptographic Hashing by Claessen,
Pałka for details and the rationale of the design.

The package provides the following:

  A splittable PRNG that implements the standard System.Random.RandomGen class.

  The generator also implements an alternative version of the
  System.Random.TF.Gen.RandomGen class (exported from System.Random.TF.Gen),
  which requires the generator to return pseudorandom integers from the full
  32-bit range, and contains an n-way split function.

  An alternative version of the Random class is provided, which is linked to the
  new RandomGen class, together with Random instances for some integral types.

  Two functions for initialising the generator with a non-deterministic seed:
  one using the system time, and one using the /dev/urandom UNIX special file.

The package uses an adapted version of the reference C implementation of
ThreeFish from the reference package of the Skein hash function
(https://www.schneier.com/skein.html), originally written by Doug Whiting.
+ hs-tf-random
Update to 2.7.3

changelog:
QuickCheck 2.7.3 (released 2014-03-24)
	* Add annotations for Safe Haskell.

QuickCheck 2.7.2 (released 2014-03-22)
	* Fix bug in cabal file which broke cabal test

QuickCheck 2.7.1 (released 2014-03-20)
	* Fixed bug - the Small modifier didn't work on unsigned types
	* Changed arbitrarySizedIntegral to have an Integral constraint
	  instead of just Num

QuickCheck 2.7 (released 2014-03-19)

	* New features:
		* New genericShrink function provides generic shrinking with GHC.
		* New combinator x === y: fails if x /= y, but also prints their values
		* New function generate :: Gen a -> IO a for running a generator.
		* New combinators infiniteList and infiniteListOf for generating infinite lists.
		* Several combinators added to the main Test.QuickCheck module which
		  were previously languishing in other modules. Of particular interest:
		  quickCheckAll, ioProperty.
		* New combinators delay and capture which can be used (unsafely!)
		  to reuse the random number seed. Useful for generating
		  polymorphic (rank-2) values.
		* A new Discard data type and a Testable instance for discarding test cases.
		* All modifiers now have Functor instances and accessor functions.
		* Pressing ctrl-C during shrinking now shows the last failed
		  test case, rather than the current shrinking candidate.
		* Experimental support for UHC. You will need the latest version of Cabal from git.

	* Better distribution of test data:
		* The Int generator now only generates fairly small numbers.
		* The new Small and Large modifiers control the distribution of integers
		  (Small generates small numbers, Large from the whole range).
		* Floating-point numbers shrink better.

	* Improved random number generation:
		* QuickCheck now uses TFGen rather than StdGen on newer versions
		  of GHC, because StdGen's random numbers aren't always random.
		* 'variant' now uses a prefix code. This should prevent some
		  potential bananaskins with coarbitrary.

	* API changes:
		* The Gen monad now uses an abstract type QCGen rather than StdGen.
		* The Result type now returns the thrown exception and number
		  of failed shrink attempts.
		* Property is now a newtype rather than Gen Prop as it was before.
		* promote is moved into the new module Test.QuickCheck.Gen.Unsafe.
		* 'printTestCase' is deprecated - its new name is 'counterexample'
		* 'morallyDubiousIOProperty' is deprecated - its new name is
		  'ioProperty', no moral judgement involved :)