renamed parser context  sub-object to settings and created some static constructors to make it more readable