Add breakpoint utility function.
Add unrooted_must_root lint for enums and structs containing JS<T>, as well as functions with JS<T> in their parameter list

For safe wrappers over JS<T> (eg Temporary<T>) use #[allow(unrooted_must_root)].
For all other types containing a #[must_root] value, annotate the type with #[must_root] to ensure that it is never used unrooted
Removed unused BlobMethods and CommentMethods traits, fixes #3366
Add unrooted_must_root lint for usages of JS<T> in let/for bindings
Unwrap pointers and miscellany for unrooted_must_root check
Address review comments
Make Reflector #[must_root], propagate to non-HTMLElements
Use #[must_root] for HTMLElements
Update README.md
Update README.md
Merge pull request #3377 from LalehB/patch-5

Update README.md
Merge pull request #3373 from ProgramFOX/issue3366

Removed unused BlobMethods and CommentMethods traits, fixes #3366
Fix `mach cargo` is missing
Merge pull request #3367 from jdm/breakpoint

Add breakpoint utility function.
Merge pull request #3382 from saneyuki/mach

Fix `mach cargo` is missing
Fix for issue #3238

Moved the Atob and Btoa methods ouside the impl for WorkerMethod trait
and made them publicly accessible from WorkerGlobalScopeMethods via
proxy methods.
Merge pull request #3374 from Manishearth/lint_unrooted_jsmanaged

Add lint for ensuring proper rooting of JS<T>; r=jdm
build: Update string-cache to fix a nasty race
Merge pull request #3376 from pcwalton/string-cache-race

build: Update string-cache to fix a nasty race
Update string-cache for real