------------------
- add missing Landsat panchromatic band (08) min/max fetch in `rio_tiler.landsat8.metadata` (58)
- add pre-commit for commit validation (64)
- code formatting using Black (the uncompromising Python code formatter) (64)
- update documentation (Sentinel-2 cost) (68)
- add `utils.raster_get_stats` and `utils._get_stats` to replace `min_max*` function
and to return more statistics (66)
- add overview level selection to statistical functions to reduce the data download (59)
- add pure GDAL `array_to_image` function to replace PIL tools (29)
- add GDAL format output from `utils.get_colormap` to be used in `array_to_image` (29)
- add GDAL compatible Image creation profile (29)
- add max threads number settings via "MAX_THREADS" environment variable (71)
Breaking Changes:
- update `metadata` structure returned by `landsat8.metadata`, `sentinel2.metadata`, `cbers.metadata`
- force sentinel, landsat and cbers band names to be string and add validation (65)
- moved landsat utility functions from `rio_tiler.utils` to `rio_tiler.landsat8`
- rio_tiler.utils.landsat_get_mtl -> rio_tiler.landsat8._landsat_get_mtl
- rio_tiler.utils.landsat_parse_scene_id -> rio_tiler.landsat8._landsat_parse_scene_id
- rio_tiler.utils.landsat_get_stats -> rio_tiler.landsat8._landsat_stats
- moved cbers utility functions from `rio_tiler.utils` to `rio_tiler.cbers`
- rio_tiler.utils.cbers_parse_scene_id -> rio_tiler.cbers._cbers_parse_scene_id
- moved sentinel-2 utility functions from `rio_tiler.utils` to `rio_tiler.sentinel2`
- rio_tiler.utils.sentinel_parse_scene_id -> rio_tiler.sentinel2._sentinel_parse_scene_id
- removed deprecated PIL support as well as base64 encoding function in rio_tiler.utils
- rio_tiler.utils.img_to_buffer
- rio_tiler.utils.array_to_img
- rio_tiler.utils.b64_encode_img
- removed deprecated min_max* functions (landsat_min_max_worker and band_min_max_worker)