Major rewrite, clean up almost everything. Stable and working!