Moved recursive logic into its own Singleton and renamed one of the 'details' key to 'info' so we don't have ['details']['details']
Got the front end communcating with the back end. Need to do the following:

1) Update the compilations_spec tests to be...better
2) Take into account listing and TP transaction fees
3) Figure out why cooking recipes aren't generating correctly
4) Format the front-end results to be readable and to display
   just the best crafting path
5) Cache the ingredients list for ~15 minutes