Move SemanticTable into LogicalPlanContext and cleanup leaf planners

o Unravels issue around Identifier <-> IdName confusion:
   (1) Might want to replace IdName with Identifier again since we don't have types for the latter
   (2) IdNames can be ambiguous due to name shadowing
Pull LogicalPlanContext out and turn {SimpleLogical|Projection}Planner into objects