finished factory function and notation parsers, tested that all formats return a correct class object