Refactor utility functions into appropriate modules, move minor generic helpers into their own file rasterhelpers.py, improve docstrings and error messages, improve projected xy to array ij coordinates function, allowing fractional array indices.