[+DS] Pass in object when calling can_see?

can_see? will have a special logic whether we show some properties or not (by object).
There should definitely be a test for the property object and extracting the validation and having a defined interface is a good idea.