A framework for parsing endf files in c++

This is an admittedly very rough idea on flexibly parsing endf files in c++ (but it does work). Before this gets merged the only thing someone who wants to extend it should need to write is the `read_xxx` function where `xxx` is the mt number and write the struct derived from `mt_base_struct` (and maybe edit the xdressrc if I go that direction). The decision trees and cython layer will all be autogenerated.
Mea culpa on the underscores in data, but it turns out that this actually breaks the standard as @elfring pointed out.  Also see http://stackoverflow.com/a/228797/2312428  We'll have to go through and fix these eventually.