Big changes, almost done

woooooooooooooooo