All the big pieces should be there, unless I forgot something. Now to just get it to compile and iron out the bugs. Should probably add way more diagnostic stuff too.