Merge pull request #65 from sschaef/add-junit-rule

Add junit rule
Add override keywords to ReusingPrinter where necessary
Generate return type for defs with single expressions in braces

In case

    def foo = {
      0
    }

should be transformed to

    def foo: Int = {
      0
    }

by adding its return type, the result was

    def foo: Int = 0
    }

Fixes #1002268
Fix return type printing for methods that return Unit
Add space before return type of method that ends with special sign

Fixes #1002267
Print type keyword when the type of an object should be printed

I would prefer to fix this somewhere in the printing logic and not in
the construction logic of the tree but I didn't find a way to
differentiate the Ident trees correctly in the printer. For

  object X { def x = 0 }

the Ident trees of `X.type` and `X.x` seem to have the same shape at the
beginning.

Fixes #1002233