Discovering and Exploiting Structure for Gaussian Processes