Visibility fixer

Entirely rewrite fixer to use tokens instead of regexp, what fixes several problems in generated fixed code, eg functions _after_ class definition (mentioned in #332). Extends utests as well.
Don't see benefit of this change, but as well don't see benefit to keep protected instead of private. I've made a change as you wish!