updating controller layout and testing strategy, adding dependencies