Finished v2, not tested. Includes cropping service