Added filtered method for Option type
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
Add rules for assert, fail, and deriving to vim syntax file. Also highlight the mod path in "use module;" properly.
Fix error messages in test cases, since fns/traits now pretty-print with a bounds list
auto merge of #7319 : thestinger/rust/hashmap-iterator, r=thestinger

#7277
Parse and typecheck (not kindcheck) bounds on trait paths.
Add tests for not-kind-checked trait bounds.
Check closure freevar kinds against destination environment bounds (#3569)
Add basic test cases for closure bounds. (#3569)
Fixed os:: and int:: not being in scope, changed io::println to println
Updated copyright year on shootout-binarytrees.rs
Changed shootout-chameneos-redux output to conform to the 'official' output format.
Added missing copyright notice to shootout-spectralnorm.
Fixed shootout-fasta.rs output
Updated shootout-fasta.rs copyright years, removed stuff that caused lint to complain.