ML-Plan: Automated machine learning via hierarchical planning