FIX: Correct order of tab and window restore commands.

The tabpage and window arguments given to s:jump_to_window() refer to the current values, so when inserting into the session file, first the tabpage, then the window (in that tabpage) have to be restored.
Handle (i.e. do not increase) zero-width windows.

The :windo command enters each window, which causes the height to increase to at least 1 (to make the current line visible). (The so-called "Rolodex mode" uses stacks of 0-width windows, with only one maximized.)
To avoid changes to the window layout, it (and the current window number) need to be saved and restored after the :windo. This affects the iteration in s:check_special_tabpage() (during :SessionSave) as well as the commands added to the session (on :SessionOpen restoring a single tab page).
BUG: No prompt for session auto-load when unloaded buffers exist.

When file marks (e.g. 'A) cause unloaded buffers to exist on startup, the question for session auto-load isn't brought up.

bufnr('$') == 1 isn't a correct check; one needs to go through all existing buffers and check for listed ones that aren't the current one.
Merge pull request #93: Correct order of tab and window restore commands
Merge pull request #94: Handle (i.e. do not increase) zero-width windows
Merge pull request #95: No prompt for session auto-load when unloaded buffers exist