Make sure everything has an upper bound
Stricter bound for language-ecmascript
Add lower bounds to every package.

This includes packages that work for all previous versions, in which
case the lowest version is picked as a lower bound. This is meant to
avoid later questions if a package is failing because there is no lower
bound.

Some lower bounds are fairly speculative, but it shouldn't matter.
Merge pull request #726 from maxsnew/end-cabal-hell

End cabal hell
Fix getSlot: mixed up search direction if bit magic failed
Fix sliceRight: prevent appending empty nodes
Fix sliceLeft: table[0] needs updated, because the table is already sliced
Add tests for slicing at node borders
Fix style
Fix Array.append: different heights are now supported without forcing increased height
Add test to create an array with gaps in its structure
Merge pull request #735 from Xashili/fixSlice

Fix slice and #725
Fix style
Merge pull request #737 from Xashili/fixAppend

Fix Array.append
Stop depending on Basics
rename: div => (//) and mod => (%)
rename: id => identity
style: conform to style of all other test suites
Provide a nicer error message when ELM_HOME is not found
Fix #734 regarding overlapping open imports

Properly combine imports such that two open imports do not cause an
“ambiguous usage” error. This was particularly problematic since Text
became partially open in the Prelude, meaning that “import Text (..)”
could cause needless ambiguity errors.