The Bounds.fromString method should be able to extract a projection (as EPSG code) from the string (if present).
MapAlgebra should try really hard to get a projection from the bounds.  If not present default to EPSG:4326.
Add a Raster.setProj method which reprojects the current Raster but only if really necessary.