Fix merging enumerated types problem described in http://www.mobileread.com/forums/showthread.php?t=245435
New option to indicate whether an existing apnx file on the kindle should be overwritten.

This option makes explicit the existing behavior and allows for it to be turned off so that if a book being sent to the kindle already has an apnx file on the kindle, that apnx file is preserved instead of a new one being generated.
New option to override page count calculation method on book-by-book basis

A new option is provided which allows the user to create a custom column which specifies which apnx calculation method to use for a particular book.  The original method option is treated as a default which is overridden in cases where a valid method is given in the specified column.  This is useful, for example, in cases where the user has a small number of books which are setup for the pagebreak method and wants to use the accurate method most of the rest of the time.

Because this option was introduced into the option list before the overwrite option, I've also included code which should shift the options around accordingly in cases where the overwrite option has been implemented and used prior to applying this change.
Removing superfluous code.
Fix merging of book records not working correctly for custom columns of type text with fixed set of permitted values. Null values were incorrectly overwriting non-null values.

Merge branch 'master' of https://github.com/cbhaley/calibre
Fix use of common GUI launcher script broke generation of command line documentation for GUI commands
Kindle driver: Add option to not overwrite existing page number (apnx) files on the device when sending books to the device

Kindle driver: Add option to allow customization of the page number (apnx) generation algorithm based on values in a custom column

Merge branch 'apnxfiles' of https://github.com/rpspringuel/calibre
...
...