Eliminating of object pool concept from AutoPacketFactory

The use of an object pool complicates AutoPacket's lifetime and does not appear to improve performance.  AutoPacket is actually a very small type; rather than using a pool to optimize initialization, it's probably more worthwhile to investigate memoization of the constructor into the AutoPacketFactory type.
Adding simple keys for the user to inherit for creating parameters with a default value and parameters with a default value and range (min/max)
Merge pull request #254 from leapmotion/ref-factorypool

Eliminate of object pool concept from AutoPacketFactory
Disallow the use of DefaultKey and DefaultMinMaxKey statically by providing a pure virtual destructor
Adding more comments for the default key base classes
Removing the “struct” before AutoParam definitions since it’s already defined at the top
Changing to use value member
Merge pull request #255 from leapmotion/feat-default-keys

Feature Default Keys for AutoParameter
First subscriber no longer relevant when packets are not pooled
Merge pull request #256 from leapmotion/ref-autopacket

First subscriber no longer relevant when packets are not pooled
Correcting Windows build

64-bit conditional sources were not correctly checking the autowiring_BUILD_64 flag, and were using BUILD_64_BIT instead.
Add fixes for libstdc++
Merge pull request #257 from leapmotion/fix-msvc

Correct Windows build
Fix linux problem with libstdc++ fix
Pragma out tests incompatible with libstdc++
Merge pull request #258 from leapmotion/fix-mapat

Add fixes for libstdc++
Corrected a minor defect with the direction of a linked list reference

This verification should guard against future issues about the wrong saturation counter's AutoFilter getting called when a filter is detected as being full satisfied.

- Added unit test to verify multiple observers are called as expected
Merge pull request #259 from leapmotion/bug-multilistener

Corrected a minor defect with the direction of a linked list reference
Adding TeardownListener functionality to AutoPacket

This gives users the ability to register a lambda which is notified when the underlying AutoPacket is destroyed.  This is useful when attempting to evaluate whether an AutoPacket has been fully processed.

Users to receive the packet on teardown should make the following call:

    packet->AddTeardownListener([] {
        // ...foo...
    });
Simplification of DecorateImmediate

Making use of a function defined at file level for an array initialization, should also ease the burden in object files where DecorateImmediate is heavily used