Refactored make_absolute into functionality on the Path
Improved windows path handling support
Added is_restricted() to path
Fix vector syntax in error messages
Consolidate codes dealing with LLVM struct type
remove oldsmallintmap

Closes #4738
libcore: remove default to_str implementations for pointer types

These couldn't be overridden and so ended up being quite restrictive. This has
the side effect of changing the stringification of ~vecs, but nothing in
relied on this. Closes #4869.
Fix slice printing
test: Fix comments in pretty-printed test. rs=burningtree
Report error for non constant vector repeat count

Fix issue #3645
test: xfail-pretty some benchmarks. rs=burningtree
Emacs: Update emacs mode to be more similar to the vim mode.

Copy the keyword list, and add `self` so that it is somewhat highlighted
(being liberal with the correct categories).
Fix typo in grammar: underscore, not minus, can appear amongst hex digits.
etc: Add a suppression for more enum instruction scheduling botches. rs=burningtree
test: Residual de-muting of the test suite. rs=demuting
test: De-~mut the test suite. rs=demuting
Revert "test: De-~mut the test suite. rs=demuting"

This reverts commit f63efdc2100ff28e2a42600641835e7bd8bde591.
auto merge of #5095 : thestinger/rust/smallintmap, r=catamorphism

Closes #4738.

The `std::smallintmap` module doesn't use an implicit @ box so I just added that explicitly for now to make porting simple.
auto merge of #5072 : youknowone/rust/repeat_count, r=brson

Fix issue #3645
Stop parsing capture clauses