Remove ratio calculation from the client

The client shouldn't need to calculate the preview ratio. When adding
shapes, the user should give coordinates based on the preview div size,
and the render will be upscaled from inside Builder.
Use new colors for image markup builder
Hardcode markup colors
Add method to return ref to active shape group
Drag: add basics of dragging math / events

The tricky (e.offsetX = undefined ? e.offsetX : e.layerX) is to deal
with cross-browser issues.
Drag: actually draw shapes (only circles)
Merge master into drag-to-draw-markers

Conflicts:
	ImageMarkupBuilder.js
   * Just a few things regarding ResizeRatio
Remove image test of dell laptop.

It was large, slowed the tests down and didn't really have much
markup to bother utilizing
Tests: update 'oracle' images and add one

Fix broken placement of rectangles, they didn't need to be offset by
half the stroke width.

The 'oracle' images were created with broken alignment; rectangles were
offest by several pixels.

Also, add a new test that's meant to check exact alignment (concentric
shapes).
Shape Subclasses: add and remove extraneous code

Sicne we're using the new shapes we can now remove all
the old resize code and fix up the min / max / getMarkup
functions
Tests: new source images

Now with sharp inner corners on rectangles.
MixMax: move size limitation into shape Classes

Cause it's way cooler!!
Refactor some property assigments
package.json: specify branch for fabric

Also, update a few of the details
Merge ifixit-production into shape-subclasses

Conflicts:
	ImageMarkupBuilder.js
   * ifixit-produciton modified some code that shape-subclasses deleted
Merge drag-to-draw-markers into shape-subclasses

Conflicts:
	ImageMarkupBuilder.js
Drag: first working version

Make drag-to-draw actually work.
Require: modify the exports to be used in Browser

When creating a require() loader for the browser, the module.exports
object can't be set to a function.
Refactor: move shape classes into separate files

Now that we can require from the client side, this is possible.
Refactor: extract drag_to_create.js
MinMax: don't enforce server-side

So that markup is rendered exactly as requested
(and so the tests pass).