Don't overwrite str object, fix BreakpointWindow (issue #43)

A variable stupidly named `str` was being used, meaning that `str()`
couldn't be used to cast a number to a string. This has been changed,
fixing a problem with the breakpoint window opening.
Change docs to say <F9> runs to cursor, fix #44
Allow removing of breakpoints after debugging, fix #48

If set_line() was called on a breakpoint, the value was not cast to an
integer. This caused comparisons to fail. Now always wrap the value in
int().
Don't close file logger on exit of debugger
Remember current tab number after closing vdebug, close #23
Show updated key mappings in status window, fixes #51

If key mappings are changed in the options, now show the updated keys in
the status window.
Stop errors on visual eval when not connected, fix #52

Check to see whether the connection is alive before firing any events.
Expand user in file paths for log files, fix #53

Use os.path.expanduser() to expand '~' to full user home paths.
Ensure use of local file paths with setting breakpoint signs, #54
Set DBGP features with Vim features dictionary

When a debugging session is started, all features added to
g:vdebug_features are sent to the debugger engine. Exceptions thrown by
invalid features are caught and shown to the user.
Add information about setting features to help file
Add more prolific Githubbers to acknowledgements
Add comment to set_features, close #55
Print warning message if trying to debug with unsaved buffers, fix #57

An error message pops up telling the user to save their buffers. Until
they do, Vdebug will not enter into debug mode.