Jsr199Javac: Factor out CompilerBundle
Jsr199Javac: Factor out CompilerBundle

Summary:
I'm working toward changing Java compilation so that we can
create the source ABI partway through compilation and allow
a module's dependents to start compiling while `javac` finishes
creating the full JAR for the module.

This commit introduces a `CompilerBundle` class to hold an instance
of the compiler and related objects and metadata. This will allow
multiple method calls on `Jsr199Javac` to all reference the same compiler.

Ideally someday we'd change the interface more drastically (to actually
proivde the `CompilerBundle` back to the caller rather than hiding it as
an implementation detail), but that's more involved than I want to bite
off just now.

Test Plan: CI

Reviewed By: dreiss

fbshipit-source-id: 22e8e76

shs96c/buck,zhan-xiong/buck,shybovycha/buck,brettwooldridge/buck,marcinkwiatkowski/buck,romanoid/buck,LegNeato/buck,ilya-klyuchnikov/buck,rmaz/buck,shs96c/buck,romanoid/buck,romanoid/buck,k21/buck,shybovycha/buck,clonetwin26/buck,LegNeato/buck,SeleniumHQ/buck,zpao/buck,shybovycha/buck,shs96c/buck,ilya-klyuchnikov/buck,rmaz/buck,clonetwin26/buck,clonetwin26/buck,LegNeato/buck,LegNeato/buck,kageiit/buck,kageiit/buck,JoelMarcey/buck,robbertvanginkel/buck,Addepar/buck,nguyentruongtho/buck,brettwooldridge/buck,dsyang/buck,shybovycha/buck,shybovycha/buck,JoelMarcey/buck,k21/buck,robbertvanginkel/buck,marcinkwiatkowski/buck,shs96c/buck,shs96c/buck,rmaz/buck,JoelMarcey/buck,SeleniumHQ/buck,nguyentruongtho/buck,Addepar/buck,dsyang/buck,dsyang/buck,LegNeato/buck,marcinkwiatkowski/buck,clonetwin26/buck,k21/buck,SeleniumHQ/buck,k21/buck,facebook/buck,shybovycha/buck,marcinkwiatkowski/buck,robbertvanginkel/buck,facebook/buck,SeleniumHQ/buck,brettwooldridge/buck,facebook/buck,shybovycha/buck,Addepar/buck,brettwooldridge/buck,SeleniumHQ/buck,robbertvanginkel/buck,dsyang/buck,Addepar/buck,rmaz/buck,shs96c/buck,JoelMarcey/buck,marcinkwiatkowski/buck,shs96c/buck,shybovycha/buck,robbertvanginkel/buck,robbertvanginkel/buck,JoelMarcey/buck,LegNeato/buck,LegNeato/buck,robbertvanginkel/buck,marcinkwiatkowski/buck,dsyang/buck,zpao/buck,zpao/buck,k21/buck,dsyang/buck,romanoid/buck,clonetwin26/buck,ilya-klyuchnikov/buck,brettwooldridge/buck,kageiit/buck,clonetwin26/buck,brettwooldridge/buck,SeleniumHQ/buck,zhan-xiong/buck,zpao/buck,nguyentruongtho/buck,kageiit/buck,marcinkwiatkowski/buck,marcinkwiatkowski/buck,JoelMarcey/buck,Addepar/buck,marcinkwiatkowski/buck,LegNeato/buck,marcinkwiatkowski/buck,robbertvanginkel/buck,clonetwin26/buck,shybovycha/buck,ilya-klyuchnikov/buck,zhan-xiong/buck,Addepar/buck,k21/buck,JoelMarcey/buck,zhan-xiong/buck,LegNeato/buck,JoelMarcey/buck,ilya-klyuchnikov/buck,LegNeato/buck,ilya-klyuchnikov/buck,brettwooldridge/buck,robbertvanginkel/buck,rmaz/buck,robbertvanginkel/buck,k21/buck,romanoid/buck,shs96c/buck,dsyang/buck,shs96c/buck,romanoid/buck,brettwooldridge/buck,zpao/buck,rmaz/buck,shs96c/buck,zhan-xiong/buck,nguyentruongtho/buck,SeleniumHQ/buck,ilya-klyuchnikov/buck,clonetwin26/buck,rmaz/buck,zhan-xiong/buck,clonetwin26/buck,k21/buck,JoelMarcey/buck,brettwooldridge/buck,SeleniumHQ/buck,zhan-xiong/buck,SeleniumHQ/buck,clonetwin26/buck,romanoid/buck,rmaz/buck,nguyentruongtho/buck,k21/buck,romanoid/buck,Addepar/buck,k21/buck,marcinkwiatkowski/buck,JoelMarcey/buck,LegNeato/buck,nguyentruongtho/buck,zhan-xiong/buck,rmaz/buck,shs96c/buck,shs96c/buck,Addepar/buck,rmaz/buck,ilya-klyuchnikov/buck,brettwooldridge/buck,clonetwin26/buck,clonetwin26/buck,romanoid/buck,JoelMarcey/buck,ilya-klyuchnikov/buck,zhan-xiong/buck,k21/buck,Addepar/buck,brettwooldridge/buck,facebook/buck,shybovycha/buck,shs96c/buck,kageiit/buck,SeleniumHQ/buck,shybovycha/buck,dsyang/buck,brettwooldridge/buck,romanoid/buck,dsyang/buck,ilya-klyuchnikov/buck,nguyentruongtho/buck,zpao/buck,clonetwin26/buck,facebook/buck,kageiit/buck,rmaz/buck,LegNeato/buck,k21/buck,zhan-xiong/buck,zhan-xiong/buck,k21/buck,rmaz/buck,romanoid/buck,robbertvanginkel/buck,ilya-klyuchnikov/buck,Addepar/buck,Addepar/buck,ilya-klyuchnikov/buck,brettwooldridge/buck,shybovycha/buck,ilya-klyuchnikov/buck,JoelMarcey/buck,marcinkwiatkowski/buck,SeleniumHQ/buck,dsyang/buck,shybovycha/buck,robbertvanginkel/buck,SeleniumHQ/buck,zhan-xiong/buck,LegNeato/buck,SeleniumHQ/buck,dsyang/buck,zhan-xiong/buck,kageiit/buck,dsyang/buck,facebook/buck,Addepar/buck,Addepar/buck,JoelMarcey/buck,romanoid/buck,romanoid/buck,zpao/buck,facebook/buck,dsyang/buck,robbertvanginkel/buck,marcinkwiatkowski/buck,rmaz/buck