refactor controllers+views;