File input and output

Even though this branch is labeled JSON I/O, it also includes the following changes:

* addition of (un)pickling functionality: now the PUF file gets read in as a dictionary without us having to convert it to such from a pandas DataFrame
* an option of writing the output of taxcalc as a JSON file (I've also kept csv output as an option, albeit commented the running of that function out)
* Plan X and (optionally) Plan Y are now read in as JSON files (I can attach Plan X if you'd like)
* ``translation.py`` now looks up the relevant variables either from the Plan X dictionary or the PUF dictionary

@feenberg let me know if you have absolutely any questions about the interface. If you scroll down below this message, you should see the actual modifications I made to the code. Moreover, you should be able to comment on individual lines: just hover your mouse over one and click on the blue "+" icon that appears slightly to the left. I hope using this more will bring concreteness to our discussions.