Add visibility states

Fixes #2.