Add a utility method called "get_all_list_data" that will iterate throug...

...h a response object's link headers and returns a list of all the json data.  Added tests and Sphinx documentation blocks.  Update modules in the client package to use relative imports, as it is a best practice.  Import get, put, post, and delete methods in client package __init__.py to make it easier for end user and for methods to call the API.
For the "infinity" scenario, would that still mean passing in a function pointer?  I guess I didn't have an averse reaction to making a nested call like: 
get_all_list_data(list_course_sections(course_id))
However, if you feel strongly, then we can change it.  Can you just provide how you'd expect the get_next_page method to work?  would it take a function pointer, or would it take a response?