New MapBuilder class

Intended to supersede Dictionary. Can take any key/value argument types, and
adds key/value normalization, checking and entry check.
Experimental code for a new reader module/class
More beta DI code

Getting a plan... Slowly... And compatible with the existing builders.