Add HashSet::with_capacity_and_keys() function

This function can be use to create HashSets before the tls is
initialized.
Convert rust_crate_map.cpp to Rust

Conflicts:
	src/libstd/rt/logging.rs