Optimize (?) Tree#symbol
Optimize array copy in Scopes
Optiimze getExcepctions in GenASM
Optimize ByteCodeWriters

 Assume we can write the the file, rather than opening it proactively.
Optimize Transformer#treeCopy

Make it a non-virtual var, rather than a virtual val.
Optimize Attachments

Changes semantics
Optimze: Avoid virtual `global` call in a couple hot places

Rids me of profiler noise.
No need to check for double defs in statements inside a PackageDef

The error is issued elsewhere. The way this was being checked had
quadratic performance wrt the entries in the package.

    (for i in {1..100}; do for j in {1..100}; do echo "package pkg { class A_${i}_${j}___(val a: Int, val b: Int) }" >> sandbox/A1.scala; done; done) && time prf qbin/scalac -Ybackend:GenASM -J-Xmx1G -J-XX:MaxPermSize=400M -d /tmp sandbox/A*.scala;

    Was: 2m11s
    Now: 0m34s

Sounds great, right?

    (echo "package jpkg;"; for i in {1..100}; do for j in {1..100}; do echo "class A_${i}_${j}___ { public A_${i}_${j}___(int x, int y) {this.x = x; this.y = y; }; int getX() { return x; }; int getY() { return y; }; int x = 0; int y = 0;}"; done; done) > sandbox/test.java && time javac -d /tmp sandbox/test.java

    real	0m3.920s
    user	0m8.757s
    sys	0m0.871s
Optimize Transfomer#transformStats

Fuse the mapConserve and filter.
Optimization: Use AnyRef more widely