The hard part is not adding a new datatype -- that would be a trivial patch of a few dozen lines. The hard part is making sure all the code that deals with metadata -- this means metadata reader/writing, export/import, catalogs, rules, metadata editor, searching, etc. all handle the new datatype.
From looking at your zip file you seem to have considered many of those. If you want your code reviewed for inclusion in calibre, please send me either a git patch or a github pull request, as described here:
http://manual.calibre-ebook.com/deve...to-be-included