try and modularize controllers more