Initial commit of Joe Harjung's scala frontend code
Remove scalac-plugin.xml from pact4s-compiler

Not needed since pact4s will not be a compiler plugin anymore
Add some scala-macro code and remove most of the old code

This is not in a working state, however...
Rip out all of the stuff that is not ozone-scala
Restructure pact4s into ozone-scala and move from pact4s dir to base dir
Manually add all the changes to make it work with ozone
Add (hopefully) working version of serializer code gen
Add somewhat working version of MapContract code gen
Move to OneInputStub and TwoInputStub as traits instead of Map4sStub etc
Add new DataStreamNG as interim solution

Neede before everything is ported to the new way of doing things
Rename NGStubParameters to StubParametersNG
Adjust post pass for new pact record post pass model
Fix bug caused by wrong usage of Block()

Block() in scala 2.10 has different semantics from scala 2.9
Fix mkFieldIndex for scala 2.10 macros but do not use it

1. It does not work because the typechecker somehow does not like
reified or created match blocks with unapplySeq

2. I think it is not necessary because we can do not need the
functionality at runtime, we can resolve everything at macro/compile
time
Add UDTGen and fixup code to make that stuff work
Shorten type names in MapMacros
Rewrite how data sources are handled with the new analysis scheme

Also add a lot of fixups that become necessary in other code due to the
changes.
Port data sinks to macros

Also fixup some other stuff:
 - Data sources use reify now
 - Ditto, MapMacros
Add a lot of stuff to make things (almost work)

The problem now is that the generated classes are not java static inner
classes and so cannot be instantiated during runtime. We need to add to
stratosphere the feature to specify objects instead of classes as the
UDF in a PACT contract.
Bring up to date with newest ozone version

Mainly the change to using objects for UDFs, which was necessary for
the scala frontend