Building A Solid Planning System