Add filesystem support to xblock-sdk

***Unfinished. Do not merge.***

@nedbat @cpennington @ormsbee This is the corresponding branch in xblock-sdk. Ned asked for a pull request while reviewing XBlock. This adds a filesystem field. 

This branch works, and the gist of it is correct, but the code still has some amount of cleanup (comments, structure, and in one place, correctness) before it's ready for review for merge, except in the context of how the field in the XBlock branch is used (of course, any feedback, bearing in mind it is not finished, is very welcome). 

It tests the code in the corresponding XBlock PR. 

***Unfinished. Do not merge.***