Major cleanup

Change-Id: I66e2dbc52c8ab1a25f7e64ad0652763af4d0cea5