This commit adds a variety of features in preparation for the v1.0 release. The largest updates are to the segments class. In summary: File format drivers: * Exposed file format drivers when saving rasters and features * Added utils.driver module Backend improvements: * Most class properties are copies * Raster values are read-only views * Validation methods do not copy whenever possible * Consolidate NoData logic in NodataMask class Misc quality of life: * Set license to gplv3 * Added spatial option to Raster.from_array * Added nodata casting option to Raster.from_array * Add "burned" alias to severity * Enhanced broadcasting in g14 * Suppress log(0) warnings in g14 * check_flow option in watershed Segments: * Now tracks segment connectivity * Add flow-continuous filtering * Add functions to locate terminal outlets * Add function to build terminal outlet basin raster * Add basin and outlet export (as polygons/points) * Add omitnan options to summaries (also to s17 variables)