* Split the InventoryTable view/controller out from the existing
inventory view/controller. This is a simpler component which only
includes the table itself, and not the scrollbox, panel or header
used on the crafting page.
* Create the FullRecipe view/controller to represent the expanded
version of a recipe shown on the item page (as compared to the
terser version on the crafting page).
* Rename the existing Recipe view/controller to MinimalRecipe to
avoid confusing the two.
* Refactor the CSS for the Stack view/controller so that it can be
shared between the Inventory and InventoryTable views.
* Incorporate all these new controllers into the item page and hook
up the necessary model logic to drive them.
* Refactor event handling in controllers to use a method to define
the hash (and thereby allow inheritance)
* Refactor link handling so that links which should be handled by the
router can be handled by the base class
* Change the router to throw out controllers for pages which aren't
on-screen (and thereby avoid a lot of weirdness)
* Create a nascent version of the mod detail page
* Make the slug mandatory for Mod instead of name, and load the name
from the data file
* Make the Feedback view universal on all pages
* Refactor the use of mod pack to have a single global object at the
router level which is shared between pages. Further, make this one
object load itself immediately and have it automatically load any
activated mod version
* Refactor the use of Storage related to mod pack versions into the
router as well.
* Add trace logging back in for events, but allow individual classes
to suppress it (as opposed to actually supressing the events)
* Fix a bug in ModVersion.eachItem where it would suggest so-called
items which are merely registered slugs without associated items
* Remove V1 of the mod version parser and shift V2 up to be V1
* Add a parser for mod.cg files, and refactor the the mod-version.cg
files to push the appropriate content up to the mod.cg
* Remove the concept of "silent" from BaseModel along with logging
each event as they are fired (which is what really prompted the
need for it in the first place)
* Move use of the Storage class to be completely the province of the
controllers most closely related to models affected
* Convert the ModVersionController to the ModController and have it
take on responsibility for choosing the mod version
* Update BaseModel to support simple accessors for the current state
* Update CraftingPlan to be able to remove uncraftable items
* Implement the Mod model
* Rewrite the crafting algorithm to recursively find all the steps
involved and then resolve how many times each needs to be run.
* Update the base controller to debounce calls to refresh
* Fix a few erroneous recipes for IC2-Classic
* Add output box to the crafting table view
* Add remaining crafting patterns to all MC 1.7.10 recipes
* Add all crafting patterns to Buildcraft 6.2.6
* Disable mods which don't have patterns yet
* Add the Url constants for computing urls from templates
* Add the `findItemDisplay` to ModPack (along with tests) and remove
all replace all uses of `getPathSlugs` with it
* Update the router to understand /item/:name routes in addition to
v1.0-style parameterized routes
* Add support for updating the current URL based upon the item being
viewed
* Change LandingPage* to ItemPage*