Refactor

This refactoring accomplishes the two major things:

1. Splits the YAML entry into two separate boxes. This will allow for deeper configuration files on right box, and allow a user to spend more time customizing specific items in the left box.
  
1. Allows a user to upload files in each of the entry boxes

1. Reorganizes the `app.jsx` file so that states are more modularized.