Semantics cleanup and Architecture adjustments