Added functionality for the optional Submission text and url that can be passed in the XML request for Canvas. The Canvas specs say that either 'text' or 'url' can be filled out, but never both at the same time.
Added error checking for the result_data dictionary. Raises InvalidLTIConfigError if dictionary has more than one entry or if the entry does not have the key 'text' or 'url'. If url or text is set to None, the XML function inserts a self-closing tag (e.g. <url/>). If url or text set to empty string, the XML function puts both tags (e.g. <url></url>). I did not include url validation for the 'url' field because return URLs might be relative or absolute, depending on the application
result_data wasn't being defaulted to None, so an error was being thrown during the XML function. result_data is now set beforehand. If it contains values, then error checking happens. If it's None, then the function resumes as normal
Merge remote-tracking branch 'rgutierrez1014/develop' into develop

Conflicts:
	ims_lti_py/outcome_request.py
	ims_lti_py/tool_provider.py
Merge branch 'develop' of github.com:tophatmonocle/ims_lti_py into develop