Dictionary Validation

This is also probably not complete. More questions incoming...
> loadWithId looks wrong I think

Fixed. I cleaned up some of my option handling after lunch, but still wondering if there are places I can improve the code. Comments welcome.