Complete rewrite to utilize libMC.NET