Repackaged

and cleaned/organized further