Issue #26 Detach trimmer layout from controller

Image trimmer controller now has no access to the layout. All communication
is done by events.

Image trimmer module now creates a region that manages the appearance of the
image trimmer layout.
Issue #26 Slider handles over dragging

When the trimmer slider is dragged out of bounds, adjust its width to
the largest possible amount.
Issue #26 Adjust size of image based on slider

If the slider is "swung" off the screen, adjust the size of the image to
the maximum or the minimum possible as appropriate.
Issue #26 Image fits in trim space on load

When an image is loaded, size it to fit squarely in the image trim space.

Slider now starts from left side.
Issue #26 A bit more fitting

Decrease the size of the image trimmer container slightly.

Choose a minimum height or width depending on the images aspect ratio.
Issue #26 Image trimmer to manage one instance

Image trimmer had been configured to manage a series of instances. Change this
so now the image trimmer can only manage one instance of itself.
Issue #26 Privatize catch methods

Methods for catching image position and size in the image trimmer have been privatized.
These methods should not be callable from outside the image trimmer.
Issue #26 Remove extra function for showing dialog

There was a function in the image trimmer dedicated to showing the dialog.
Remove this because the dialog will always be shown at render now.
Issue #26 Link image parameter changes to catch

Use new private catch methods in change image event callbacks.
Issue #26 Create test case for showing image

When an image is loaded from a URL it should appear in the image trimmer.
Add a test case to verify this.
Issue #26 Add logic to reject bad files

Only images can be loaded into the image trimmer. Create a list of valid files
and add logic to reject invalid files.
Issue #26 Conceal new image method

Method should only be called by new:image event.
Issue #26 Include application css file in spec

Application css file now appears in the spec so that the image trimmer
can take on its required characteristics.
Issue #26 Add test case for placing an image

When an image is loaded it should be placed in the center of the image trim.
Add a test case to verify this.
Issue #26 Test case for images that are not 4x3

Add a test case that verifies that a non 4x3 image will fit properly when
loaded.
Issue #26 Add test case for loading long images
Issue #26 Disable save on click and add a message

When the save button is clicked, disable it so it wont be clicked again
then add a message.
Issue #26 Basic error handling for bad images

When a URL or image is entered that cannot be handled, clear the previous
image and do not proceed.
Issue #26 Detach trimmer layout from controller

Image trimmer controller now has no access to the layout. All communication
is done by events.

Image trimmer module now creates a region that manages the appearance of the
image trimmer layout.
Issue #26 Slider handles over dragging

When the trimmer slider is dragged out of bounds, adjust its width to
the largest possible amount.