Changed Protol and Command classes from string literals to enums to avoid having to write the name twice.