Track latest 0.4 dev changes

Adds Compat.jl as a dependency, and renames String -> AbstractString.  
Renames `test/test.jl` to `test/runtests.jl` so `Pkg.test("Homebrew")` now works.