Fix filename case in test run scripts

This causes them to properly clean up IBC files after them on
case-sensitive filesystems.

Fixes #866.
Add Uninhabited to Prelude

Fixes #859.
Improve search for dynamic libraries

Now, dynamic libraries are searched in these places:
 1. Current working directory
 2. Current import paths (for example, from loaded packages)
 3. The system paths for dynamic libs

Fixes #861.
Fix for metavariables in type declarations

Allow multiple, with later allowed to depend on earlier
Record partial type inference info

Proof search now has access to this and can fill in some basic type
information. Lots still to do though (especially dealing with type
classes, properly spotting errors, and polymorphic type variables).
Some improvements in finding inference constraints
More consistency checking on inference constraints

Also added a test for simple interactive type inference
Merge pull request #867 from david-christiansen/test-case

Fix filename case in test run scripts
Merge pull request #869 from david-christiansen/dynamic-lib-search

Improve search for dynamic libraries
Merge pull request #870 from raichoo/javascript

Javascript
Improve inference in monadic code

This makes unification treat global metavariables the same way as local
metavariables. Maybe be slightly dubious if the metavariable is not
intended for type inference...
Set version for patch release
Fix non-FFI build
Merge pull request #868 from david-christiansen/uninhabited-prelude

Add Uninhabited to Prelude
Add interactive002
javascript: remove redundant local constructors