Moved experimental compiler flags to -Z (#4740)
Added a few missing 'pub's
add a BaseIter implementation for PriorityQueue
Fix const enums better: let them have the same alignment as an "opaque enum".
Pad out enum consts to the expected size; makes enums in tuples work.

This is wasted space if the const is just an enum, but optimizing that
case without breaking everything else is an issue that can be addressed
separately.
Also need to pad out "C-like" enum consts (paths as well as calls).
core: Remove transitional code
Make vectors of enums work as constants
Fix pointer consts to work with enums
Add a test for vstore, which already works
Fix const enum type issues for structs.
Make tuple-like structs containing enums work as constants.
Fix vector indexing in consts so it works with the enum vector const fix.
rm each method from the Map trait

the map types should implement BaseIter instead
implement BaseIter for TreeMap
make Option's map and map_default use a lifetime
implement BaseIter for SmallIntMap
add a ReverseIter trait
implement ReverseIter for TreeMap and TreeSet
implement ReverseIter for SmallIntMap