Split the project into multiple modules

My attempt at splitting the project into multiple modules. All dependency versions were left unchanged. The following modules were created:
* newman-core
* newman-twitter
* newman-apache
* newman-finagle
* newman-spray
* newman-caching
* newman-serialization

I couldn't work out a way to have one import for the dsl so it currently works like
```scala
 import com.stackmob.newman.dsl.{RichIOHttpResponse=>_, RichFutureHttpResponse=>_, _}
 import com.stackmob.newman.serialization.dsl._
```
which isnt very nice

Any comments appreciated
I wanted to try and reduce the duplication in RichIOHttpResponse and RichFutureHttpResponse as they had exactly the same methods. I think I succeeded, but those types got a bit out of hand. I also probably butchered the comments a bit.

The docblocks on both refer to prepare() and prepareAsync() which don't exist any more. prepareAsync() was replaced by apply()? is there an alternative to prepare()?

I'm not real happy with how splitting out the serialisation dsl ended up, but no other way really worked