Fix the default session setting

We were setting the default session to `$HOME` and after a really big
refactor getting `EISDIR` wasn't of much help.
Fix bugs and refactor the sessions module

Well, I forgot that `_.compact` returned an array and was using as if it
was a function I'm used to having on production environments
(`compactObj`) and that took quite a while to debug. Also, for some
reason I wasn't using the already written `sessions.load` method on the
`sessions.save` implementation, which led to code duplication in the
most ridiculous of ways. Things work fine now.
Start making a style change

Using documentation banners and symbol alignment is so June 2014 I
really can't do it now. Personally I now think this is bad practice,
though I used to do it everywhere. So... My bad. I just won't keep this
like it was.
Update the dependencies

This updates dependencies to their latest versions. Nothing should
break because of it.
Fix session persistence and session loading

This fixes basic functionality, refactors tests, makes major changes to
the `cli` module, making it much more robust and well factored. It makes
basic saved link fetching work. Documents things in the most
comprehensive way passive.

It closes #1 and #2. Since those issues are really old and were mainly
to start discussions, rather than to actually think about
implementation, I won't revisit them to comment on what my initial
thoughts on this tool were.