cleaned up, modularized, removed dblclick zoom behavior, dblclick and scroll zoom together still buggy
figured out how scaling and translate were calculated, fixed up scroll zoom params when manually zoomed and translated
fixed scroll zoom for reset, fit to window