Make parsing error-tolerant. We're only looking at a small portion of scripts'
content, after all. Motivation: using libamd with scripts containing es6
features.
getDependencyGraph: don't bail if a dependency can't be resolved.  Instead,
stop traversing at unresolved nodes and attach a "resolved: false" attribute
(so unresolved dependencies can be still be filtered out/inspected by
downstream code if desired).  This way users can still see the parts of the
graph that *could* be traversed.