# This is a combination of 2 commits.
# The first commit's message is:

Adds Leonardo number type/class

Adds template code to make the sorting truly generic for both arrays and
STL containers (or any class with iterator, reverse_iterator, and []
methods defined). And in the global scope of the header, I defined a new
class to represent the set of Leonardo numbers, with the ++, --, and ~
(previous) operators and conversion to unsigned defined.

# This is the 2nd commit message:

Implements all template boilerplate

The template mechanics for easily handling arrays and STL containers are
fully implemented; smoothsort isn't implemented yet, but insertion sort,
quicksort, and introsort are.