This patch is based on the initial MIR serialization patch (http://reviews.llvm.org/D9616).
In this patch the machine function's names are printed out and then parsed when loading a mir file.
This patch introduces a serializable struct that will mirror the state of the actual machine functions.
This patch doesn't interact with the real machine functions when parsing yet - the connection to the
machine analysis pass where machine functions are created and the serialization of remaining attributes
in machine functions will be implemented in later patches.