[Add/Change/Fix #346] Revisit surfOptions and add full test suite

Signed-off-by: oleg komarov <o.komarov11@imperial.ac.uk>
Merge branch 'surfOptions'