Add extra documentation of what we do in the get_initial_token function.
Make the help output more informative.
Partially revert previous commit to revert argument positions.

We want to make the username and the password be "optional", while making
the course ids to be mandatory.
Move getting the list of courses to a separate function.
Move code to download lectures to a separate function.
gitignore: Add list of files to ignore.
cleanup: Remove unused scripts.
Reorganize the tree to make the program import'able as a module.

We do this while still maintaining the ability to run the script as a
program.
Allow the user to not enter a course ID when `-l` is supplied.
Wrap long lines.
Add docstring for the whole program.

It still needs more information, but we can fill in those later.
Rename "constant" `LOGIN_API` to `LOGIN_URL`.

The former is not really an API, but simply an URL.
Add rudiments of unittests.
Fixed bug: Video reproduced at higher speed was downloaded by default.

Now it chooses by default the one with 1.0x speed.  To reproduce you can
test with the statistics course that it's running now.

[rbrito: Minor adaptation to apply cleanly to the noninteractive branch.]

Signed-off-by: Rogério Brito <rbrito@ime.usp.br>
test: Fix spaces and disable messages from pylint.

Unfortunately, we have no control over the names or number of methods that
the standard python library employs.
Add support for debugging information.
Rework the download_videos function.
Only print or pass the video ids for youtube-dl.

We don't need to pass entire URLs to youtube-dl, as it gladly accepts only
the video ids.
Add some very dirty code that's just an skeleton of what I want.

The *very* basic functionality is there, but we have to improve a lot in
terms of cleanliness.
modularization: Move first functions to a separate file.

With this, we may, perhaps, achieve some reusability between projects and,
also, ease implementation of unit tests.