Make visibility modifiers not combinable anymore. Also introduce 'visible' modifier.

It is a syntax error now to give more than one visibility modifier
(private, protected, static, visible, public). The visibility modifier given
on the inherit statement is combined with the original modifier to give
a single resulting visibility.

Also there is a new modifier 'visible' which stands for the default behavior.