save-sexp-pp-indent: indent according to indent-tabs-mode and tab-width

Also add doc-string.
save-sexp-delete: improve doc-string, cleanup, add fixme
save-sexp-save-helper into save-sexp-default-save
save-sexp-save-setq-1: fix doc-string
save-sexp-save: move FILE argument first and finish with &rest ARGS

FILE is the only argument actually consumed by `save-sexp-save' so it
should be first.  SAVE is now applied to ARGS instead of restricting
SAVE to exactly to arguments as before (VARIABLE and PP) making it
more flexible.
save-sexp-save-setq: switch argument order

for consistency with save-sexp-save.
fixup commentary
save-sexp-delete: fix search for local variables
save-sexp-delete: delete newline after sexp
save-sexp-default-save: fix surrounding sexp with empty lines
release 0.3.0 a complete rewrite

This differs from earlier versions in that
* whitespace is better preserved/removed around inserted/removed sexps
* there are more convenience commands
* doc-string is optionally preserved when updating sexp that support it
* some basic tests where added
* more flexible, better defaults
* order of arguments has changed a lot

The order of arguments is still subject to change.  Most importantly
the position of optional VALUE argument of save-sexp-save-* functions
might change because it has be the last argument and additional
optional arguments might be added in the future.