Major cleanup

Change-Id: Ie6094c9fc6f5f6cbfd5cc98ac16751ba54f05e3b