Second Revision

Adds the main frame for the code and some extra.