controllers separated from main app script