basic scanner and token classes that do not do much