Rewrote the code to be more general, added meta files.