Dynamic programming methods for the American option pricing problem with stochastic volatility