Highlight current entry now works with manual movement.

The highlighting of the current entry in the browse-kill-ring buffer
previously only worked when using the special forward/backward by entry
commands, though these are certainly the easiest way to navigate the
browse-kill-ring buffer, sometimes, a user might want to make use of the
manual movement commands.

This patch reworks the mechanism used to highlight the current entry so
that it will work whichever approach is used to navigate the
browse-kill-ring buffer.

ChangeLog:
	(browse-kill-ring-preview-overlay) New variable, tracks previously
	highlighted entry in the browse-kill-ring buffer.
	(browse-kill-ring-update-highlighed-entry) New function, entry
	point for highlighting entry in browse-kill-ring buffer.  Can be
	called even if the highlighting is turned off as it contains the
	check.
	(browse-kill-ring-clear-highlighted-entry) New function, clears
	the highlighting off the current entry in the browse-kill-ring
	buffer.
	(browse-kill-ring-update-highlighed-entry-1) New function, worker
	core for browse-kill-ring-update-highlighed-entry, selects correct
	entry to highlight.
	(browse-kill-ring-forward) Remove code to update highlighting of
	entries in the browse-kill-ring buffer.
	(browse-kill-ring-setup) Register a post-command-hook to update
	the highlighting of the correct entry in the browse-kill-ring
	buffer.
Fix spelling mistake, and improve `case' usage.

Fixed a small spelling mistake.

Use (nil) as the condition in `case' rather than (nil entry).
Only clear highlighting from the previous overlay.

Only clear the highlighting from the previous overlay rather than
looping over all overlays, slightly more efficient.
Update comment on browse-kill-ring-previous-overlay.

Change the comment to be inline with emacs checkdoc standards.
Summarise in the ChangeLog, not GNU style.

Switch to writing a brief summary of the change in the ChangeLog rather
than writing a GNU style ChangeLog entry.
Remove browse-kill-ring-highlight-inserted-item.

Allow browse-kill-ring-highlight-inserted-item-style to take the value
nil to indicate no highlighting, and remove
browse-kill-ring-highlight-inserted-item.

ChangeLog:

	Remove `browse-kill-ring-highlight-inserted-item' and instead
	allow `browse-kill-ring-highlight-inserted-item-style' to take the
	value `nil' meaning no highlighting.

	The default for `browse-kill-ring-highlight-inserted-item-style'
	is now nil for no highlighting, this matches the old initial value
	for `browse-kill-ring-highlight-inserted-item' which was nil by
	default.

	Given that I've removed an existing configuration variable I've
	bumped the version number.
Fixes issue when inserting with two frames/windows open.

The following issues should be resolved by this commit.

(1) In a single frame, create 3 windows within the frame, with every
frame open on the same window.  Make sure that the point is at a
different location within every window.  Place some items into the
`kill-ring'.  Lets call the windows A, B, & C.  Select window A and use
`browse-kill-ring', and then use `browse-kill-ring-insert-and-quit'.

What you should see is that in window A the item has been inserted, and
the point has moved to the end of the inserted text.  When the *Kill
Ring* buffer opened up, it will have hidden one of the windows B or C,
in the window that was hidden the point should be unchanged.  In the
third window, the one that was not hidden when the *Kill Ring* buffer
appeared, you should notice that the point has moved to the same
location as in window A.  This is a bug, the point should not have
changed in the third window, after this patch the point will not have
changed in the third window.

(2) Create 2 frames both frames should be open on the same buffer.
Ensure that the value of point is different in each frame.  Place some
values into the `kill-ring'.  Lets call the frames A and B.  In frame A
use `browse-kill-ring', then use `browse-kill-ring-insert-and-quit'.

You should see that the items was inserted at the point value of B
instead of A as it should have been.  The point value of A will have
changed to be after the inserted text.  This behaviour is wrong, after
this patch the item will be inserted at the point value of A, the point
in A will still be updated to be after the inserted item, the point
value of B will be unchanged.

(3) In a single frame on a single buffer place an item in the
`kill-ring'.  Ensure the point is NOT at the end of the buffer, now use
`browse-kill-ring', then use `browse-kill-ring-append-insert-and-quit'.

You should see that the item is inserted at the end of the buffer (as
expected) and the point has moved to the end of the buffer.  It is not
obvious that this is a bug, however, inspection of
`browse-kill-ring-do-append-insert' shows a use of `save-excursion' that
suggests to me that point is not supposed to be changed by the append.
After this commit the item is still inserted at the end of the buffer,
but the point is restored to its original position.

(4) Same as #3 but with `browse-kill-ring-prepend-insert-and-quit'.
Remove browse-kill-ring-highlight-inserted-item-style.

Restore browse-kill-ring-highlight-inserted-item, and allow it to take
value `pulse' and `solid' as well as `nil' and `t'.  The value `t' means
default, which is currently `pulse', `nil' still means off.

ChangeLog:

	Remove `browse-kill-ring-highlight-inserted-item-style' and
	instead allow `browse-kill-ring-highlight-inserted-item' to take
	the value `pulse' or `solid' as well as `nil' and `t'.  It's type
	is changed to `choice' accordingly.  The value `t' now means use
	the default highlight style, which is currently `pulse', `nil'
	still means turn off highlighting of inserted items.
Merge remote-tracking branch 'origin/master' into hl-inserted-style
Update the README file for changes to -highlight-inserted-item.

The control mechanism for highlighting inserted items has been
simplified, the README file is now up to date with these changes.
Merge branch 'highlight-current' of github.com:T-J-Teru/browse-kill-ring into T-J-Teru-highlight-current
Merge branch 'T-J-Teru-highlight-current' into official-master
Add header-line to the buffer for editing kill-ring items.

When editing items in the `kill-ring' place a header line at the top of
the edit buffer containing a brief description of key bindings, this
replaces the current message containing the key binding advice.

This patch also adds an abort key binding which closes the edit buffer
without saving any changes back to the `kill-ring'.

Finally, this patch kills the edit buffer when the user finishes editing
rather than just burying it, there seems little point keeping the buffer
around once the user has finished with it.

ChangeLog:

	When editing entries in the `kill-ring' place a header line in the
	edit buffer with a short key guide.  Kill the edit buffer when
	editing is finished rather than just burying it.  Add an abort key
	mapping to allow the edit buffer to be closed without saving the
	changes.
Merge branch 'hl-inserted-style' of github.com:T-J-Teru/browse-kill-ring into T-J-Teru-hl-inserted-style
Merge branch 'T-J-Teru-hl-inserted-style'
Merge branch 'yank-in-window' of github.com:T-J-Teru/browse-kill-ring into T-J-Teru-yank-in-window
Merge branch 'T-J-Teru-yank-in-window'
Merge branch 'edit-header' of github.com:T-J-Teru/browse-kill-ring into T-J-Teru-edit-header
Merge branch 'T-J-Teru-edit-header'