I decided to do this in C#, it still has issues right now, and is currently working less than before. SuX0r!