Function-on-Function Bayesian Optimization