Some architecture changes [v1]