split browser controller into subfiles