Added abstract factory to take responsibility of creating all nodes in the template players parse tree