namespaces changed, frontend added

IFrontend, Frontend added,
PrintVisitor moved to frontend,
most stuff moved to frontend