implemented XBlockModel & XBlockUser

This commit introduces models.py, which has two classes:
	XBlockModel
	XBlockUser

XBlockModel is a general interface that allows runtimes to
represent any python model in a flexible manner by patching
attributes onto it.

XBlockUser is a slightly more structured interface, which
expects a number of fields from the runtime such as emails,
full_name, user_name, etc.