Restructure & cleanup