Fixed session logic for removing courses.

We’re now making way fewer/smaller database calls. For example, when
removing courses from the course bar, we no longer make a database call
since it’s not necessary to do so. Furthermore, when adding courses, we
will only make the database calls we need to, rather than re-querying
for the entire list of sessions.

The latter of these two updates increases our performance dramatically.
The only (obscenely) long wait we should be experiencing now is when
the application first loads.

Also, as of this commit, adding courses is still broken. Going to fix
that next.
Fixed add session workflow as per refactor.

Since the removal case was dealt with in the previous commit, all that
had to happen here was to append any sessions coming in from our
database calls to the session list. Then the list UI and the map pins
can be updated accordingly.