CWA, NEPA and ESA Permitting and Compliance