moved marshall out of parsing namespace
refactored resolve out of semantics and as a first-class namespace