add Compat.jl dependency, update to track latest 0.4 master