Balancing Utility and Fairness in Submodular Maximization (Technical Report)