rename cache to state
various fixes
strip-text-properties acts on a copy of the string
the description line ical events needs escaped newlines
improve the extraction of the event description
typos in ical-to-event
more sophisticated updating of the description by separating allowed
and not allowed parts.
update-buffer falls back to replacing the whole buffer, if :begin :end properties are missing
condense and fix diff functions
make sure merge-local leaves a consistent local state
merge-local has to delete from the local tree
greatly simplify merge-new-remote

as event-to-headline is already powerful enough
need to reverse the basket so that the sorting of unknown items isn't reversed

because push adds to beginning and the loop starts at the beginning as well.
move cache cleanup to set-cache-file function
more create new local item stuff in merge-local
put more logic into prepare-merge function, which simplifies a lot of things
separate the functionality which adds new events from sync-file and
merge-remote
fill the updated list directly in sync-file

the updated list must include also unchanged events. or they will
appear to be new, later.
fix typo which prevented local deletion
remove leading whitespace