Removed @visibility macro

Instead of that macro, "public/private" keyword should now be used.

There are two ways of using it:
1) "public;" / "private;" - which changes visibility of the next
declarations *in current scope*.
or the second one:
public {
declarations here
}
Which is basically the same as:
{
public;

declarations here();
}