RK added attribute-parser, att-element-parser, and lots of helper functions