better wrapping/bounding, make projection bounds optional