some initial work on 3.0 compiler