typos
Some generalization
Added get settings
Added setSettings and payment.
Added JSR-303 support (validation)
Added exceptions.