Making parlour DSL immutable + adding getters to DSL

Making parlour DSL immutable + adding getters to DSL