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)
Allow ~fn:Copy() to be copied.
Check existential type contents against destination trait bounds.
Fix pretty-printing builtin bounds on closures and traits
auto merge of #7314 : bblum/rust/trait-bounds2, r=nikomatsakis

Fixed a merge conflict, some tests, some bitrotting, etc., from #7248.
auto merge of #7279 : hanny24/rust/master, r=msullivan

This commit adds filtered method for Option type. It is not exactly necessary (chain method can be used instead), however I believe that this approach using extra filtered method is more convinient.
Create a crypto submodule and move the SHA-1 implementation into it.