move prepare out of private so that sunspot matchers has access to it, I'm not sure of a better way