Correct, but then you end up with something like `[:head, {}]`, or `['>0' , {}]` or even [{}] .

When you instantiate Dependency with `Dependency.new('foo', {})` it breaks because it thinks you gave it something in the hash.