Split out the RxJavaServiceWriter into old and new versions

RxJava moved Func1 in release 0.17, which breaks the code generated by `RxJavaServiceWriter`.  This allows generating code for pre- and post-0.17 versions.

@danrice-square @loganj 
This was a separate bug: if your service doesn't have any methods, we still put `@Inject` on the constructor and thus still need the import.