librustc: Don't allow enum struct variants to shadow structs.
Add test for duplicate definitions of structs and enum struct variants.
std::hashmap: Implement external iterator for HashMap and HashSet
std::hashmap: Add test_iterate for HashSet
std::hashmap: Use .iter() instead of .each and similar
std::hashmap: Remove BaseIter impl for HashSet

Remove the BaseIter impl, while keeping the .each method until callers
are converted.
std::to_str: Use .iter() for HashMap and HashSet
hashmap: add FIXME number
auto merge of #7267 : luqmana/rust/issue-5792, r=cmr

Fixes #5792
auto merge of #7319 : thestinger/rust/hashmap-iterator, r=thestinger

#7277
Rename all files with the 'rc' extension
Add the `warnings` lint attribute
Deny common lints by default for lib{std,extra}