Add doxygen, begin documenting, kitrap0d tidy

* Added the doxygen binaries and configuration.
* Added a `make docs` which generates documentation to the `docs` folder.
* Added some documentation to various areas of the source that I was
  working with. Over time I'll be adding more and more rather than trying
  to do it all in one hit.
* Refactored the kitrap0d code a bit to try to reduce code size.
Fix railgun multi functionality

The main issue with things being broken was because the calling
convention was not defaulting to "stdapi" and hence the call would
fail. Adding the default fixed it.

While fixing this, I brought the mulit-call functionality up to speed
with the error message functionality, so the calls all return the
properly formatted error message.
More documnetation work
Even more docs
Remove boiler extension and create 'bare' extension

The boiler extension wasn't used and was old so it was removed. I've added
a new "bare" extension which is, as it says, just bare and doesn't do
anything. This can be used to create new extension projets just by copying
and pasting, then editing a couple of small things.

This will be added to the documentation.
New ext docs, remove boiler from solution

Documentation now includes how to create a new extension using the bare
extension as a sample.
Doc changes, project fixes
Fix debug build of various components

No idea why they were broken, but they shouldn't have been. This fixes
them up and tidies a few other things up, especially the guts of the
stdapi project.
Land #28 OJ's Fix railgun multi call functionality
Update the build icon URL

Now that @bturner-r7 has got the CI going on metasploit.com the build
icon needs to point to the new server.
Documented base.* and core.*

Big job, this documentation lark. Also modified the prototype the
packet_is_tlv_null_terminated function, which used to take a Packet
instance as well as the TLV, but never used the packet in its
implementation.
Correct links for source and framework
Land #30, update README.md
Update .gitignore to avoid conflict
Remove strcpy calls, proper use of strncpy/strcpy_s

Replaced all usages of `strcpy` with `strncpy` or `strcpy_s`.

Make sure that all usages of `strncpy` specified the correct buffer size.
Resolve PR #31 conflict

Conflicts:
	.gitignore
Merging https://github.com/OJ/meterpreter/pull/1
Fix exclude config to ignore unnecessary content

Updated to use `EXCLUDE_PATTERNS` instead of `EXCLUDE_PATHS`. This
properly excludes the source of the libraries we use and also the
generated output on POSIX.

Thanks again to @jlee-r7 for the catch.
Land #31, doxygen
Land #29, new 'bare' extension

Replaces 'boiler'