Injector rewritten

This is a major injector rewrite that makes it stable in almost all cases handling edge situations with empty responses not being finished, also described in #3. Also closes #5.