Add Compat.jl as a dependency, rename String -> AbstractString

Allow testing through Pkg.test()