Multi-fracture propagation modeling: Applications to hydraulic fracturing in shales and tight gas sands