major cleanup, profile backend added