Fixed a bunch of bugs now kinda works right.