better docblocks, declare visibility for all methods