#30 improve exception handling, try not to mask exceptions in the getter/setter