semantic: Merge ContextBuilder and DeclarationGatherer into one