Add callback function to Locations and Products store autoload
settings

Prior to this commit, the selectfields on the homepage of the app were
unable to display "empty" options such as "Please choose a product"
because the api did not include this option. This commit adds a
callback function to the stores' autoload settings to insert the
"empty" field option. The text in this option may be changed at
anytime. The valueField option in the home screen was updated to allow
the selectfields to index properly.
Abstract onChooseLocation and onChooseProduct filter functionality to helper function

This commit introduces the filterVendorStore, matchesLocation and
matchesProduct helper functions to break out the filtering
functionality common to the onChooseLocation and onChooseProduct
controller functions. The helper function allows the controller to
'and' the search criteria from the location and product fields on the
home screen.

This commit does not resolve the issue of page initialization. The
home screen still loads with incorrect options for the location and
product select fields.
Add "location" field to the Location model to capture API index data.

Prior to this commit, the location selectField was not properly
indicating which field was already selected. It would highlight
whichever element was first in the store regardless of which field the
user had selected. This behavior is a known bug in the Sencha
framework that occurs when a selectField does not have a default
index or "valueField". This commit leverages the index provided by the
whats-fresh-api to provide this default index (called 'location').
Add store listeners to refresh the home view

Prior to this commit, the Home view would render selectFields before
their stores were finished loading from the API. This commit forces
the product and location stores to fire a 'refresh' event once their
data has been completely loaded and the prompt element ('Please choose
a ...') has been inserted. This commit also introduces corresponding
listeners in the controller to refresh the selectFields once their
stores are ready.
Merge pull request #40 from osu-cass/bugfix-4034-selectField-empty-item

Bugfix 4034 select field empty item