pyloxi: reduce boilerplate code required for each module

All the important inheritance hierarchies are grouped together in python
modules like "of13.action". Previously creating a new module required 5 code
changes: the `modules` dictionary in lang_python.py, the `roots` dictionary in
codegen.py, a new `generate_*` function in codegen.py, and imports in the
init.py and module.py templates.

The new code gets rid of the `targets` dictionary left over from very old
loxigen. It uses the result of build_ofclasses to determine the set of modules
for a particular openflow version. The only code change required to create a
new module is defining its inheritance root in the `roots` dictionary.
diff --git a/py_gen/templates/init.py b/py_gen/templates/init.py
index 3b73baa..aa968b6 100644
--- a/py_gen/templates/init.py
+++ b/py_gen/templates/init.py
@@ -29,17 +29,10 @@
 
 :: include('_autogen.py')
 
-import action, common, const, message
-:: if version >= 2:
-import instruction
-:: #endif
-:: if version >= 3:
-import oxm
-:: #endif
-:: if version >= 4:
-import meter_band
-import bsn_tlv
-:: #endif
+import const
+:: for module in modules:
+import ${module}
+:: #endfor
 from const import *
 from common import *
 from loxi import ProtocolError