Create directory for storing history at startup
Stop CPP from emitting useless warnings
Add test_all target to run tests for all backends

(excellent for coffee breaks)
Fix case splitting where patterns shadow global names
Merge pull request #586 from david-christiansen/create-dir-startup

Create directory for storing history at startup
Merge pull request #587 from david-christiansen/cpp-warnings

Stop CPP from emitting useless warnings
Merge pull request #588 from david-christiansen/test_all

Add test_all target to run tests for all backends
Merge branch 'master' of github.com:edwinb/Idris-dev
Take into account that GMP operations can move data

Need to follow forwarding pointers in case a garbage collection takes
place during the operation.

Note that there is still a memory leak in the way we use GMP - there is
never a call to mpz_clear in the right place.
Added simple benchmark system