Improved the display of the build output.

An explicit '-e' flag was added to the echo command, and the 'less'
command was added to the $LESS variable.
Tweaked the .gitignore file.

Previously only the contents of the bin/ directory were ignored.
Now all logs, libraries, executables and shared objects are ignored.
Renamed the testing interface functions.

The testing interface is internal to the project, and not part of
its public interface. Since the testing interface is used across
the files in the kvc/tests directory, we consider them to be
protected. Accordingly, the testing interface functions have been
preceded by an underscore '_' to indicate their protected nature.
Tidied up the testing code.

A lot of minor improvements have been made in terms of structure,
readability and consistency.
Merge branch 'topic-testing' into develop
Tiny miscellaneous tweaks.

Several little tweaks were made to beautify the code.
(Re)simplified the .gitignore file.

It has been such a long time that I've looked at this code that I
have forgotten my earlier coding decisions. Thankfully, I have
logged them! Anyway, I had earlier simplified the .gitignore file
with by removing out the extension-based rules, but had reverted
back today in order to handle the exclusion of the build.log file.

Fixed this issue by reverting back to excluding all build artefacts
in the kvc/bin/ directory, and in addition the kvc/build.log file.
Streamlined usage of leading underscores.

Leading underscores are ugly, and best avoided because they are
normally reserved for compiler use. However, I have been using
underscores to denote accessibility. I am maintaining this practice,
but only for header files; it is superfluous and clunky to denote
accessibility in implementation files.

I am retaining the earlier convention: no underscores for public
accessibility, a single underscore for protected accessibility,
and double underscores for private accessibility.
Merge branch 'topic-prettify' into develop
Migrated to kernel-docs style commenting.

This has been done for two reasons:
	1. to make the documentation more comprehensive, and
	2. to enable automated extraction of comments for building
	   an API reference document.
Corrected the typedefs for the unsigned integers.

All the typedefs for the unsigned integers had earlier been incorrectly
set to signed integral types. This has now been fixed.
Modified comments to new documentation style.
Changed case of all constants to lowercase.

This has been done deliberately to make all code uniformly lowercase.
In all cases, constants can be easily determined from context, especially
since we are following a standard identifier convention.

Over time, I have become increasingly allergic to upper and mixed cases
in code -- looks extremely ugly.
Changed enumerators of kvc_bool to lowercase.

This has been done for the sake of consistency with the updated
code style.
Completed migration to new code style.
Completed out migration to new code style.

There have been many changes in terms of styling, and there have
been some minor code corrections. The migration to the new code
style is almost complete. There are a few points that need to be
addressed, and should be closed soon.