Designing Porous Materials for Energy and Environmental Applications