Major cleanup

Change-Id: I25e9dac94cdbcb7fafa59de6051c5c21292c4ac3