move output file opening to backend

Different backends have different requirements.
diff --git a/lang_java.py b/lang_java.py
index be94e82..7b992d7 100644
--- a/lang_java.py
+++ b/lang_java.py
@@ -42,9 +42,16 @@
 
 """
 
+import os
+import loxi_utils.loxi_utils as loxi_utils
 import java_gen.codegen as java_codegen
 
 
 targets = {
     'openflowj/README': java_codegen.gen_all_java
 }
+
+def generate():
+    for (name, fn) in targets.items():
+        with loxi_utils.open_output(name) as outfile:
+            fn(outfile, os.path.basename(name))