Added new files which are the beginnings of a thread-safe implementation
of boost.signals
Removed cleanup of connections in disconnect(), moved it to connect(), in
anticipation of automatic connection management.
Cleaned up remaining bits from old disconnect callback.
Added automatic connection management.
Fixed possibility of unintended throws of bad_weak_ptr.
A slot can now disconnect it self without deadlock.

I reduced lock contention.  Now, disconnect()
can complete while the signal is being
invoked (though not while the slot in question
is actively running in any
other thread).  The signal may be invoked concurrently, but any
particular slot will not be run concurrently.  connect() may complete
while the signal is being invoked.
Don't block on slot mutexes while cleaning up connection list.  Also
prevented connection list cleanup in slot invocation from stomping
on a connection list in use by another thread.
Added support for combiners.
Added support for slot groups.
Fixed some problems with ordering of slots within groups.  Added
group compare parameter to constructor.  Filled in some missing
typedefs and member functions.
Added support for slot forwarding. Added support for
SlotFunction template parameter.  Added some missing member
functions to signal.  Fixed signal::num_slots()
and empty() to ignore disconnected slots.  Made cleanup in
connect() correctly check for automatically disconnected slots.
forgot to add new file with last commit.
Simplified and fixed slot group support.
Got rid of useless Signature template parameter on ConnectionBody.
Moved signalslib::detail::SignalN classes up two namespaces, in
preparation for turning them into the portable boost::signalN
classes.
Modified EPG::signalN classes to conform to the portable boost signals
interface.
Moved into namespace boost, and provided compatibility for
boost::signals namespace.
Removed dead code.
Use optional instead of shared_ptr in group_key
Fixed a bunch of implicit typename warnings seen while compiling
dead_slot_test.cpp.
Added support for signal::disconnect() by slot, and connection
blocking.  Passes deletion_test.cpp now.
Fixed some memory problems with scoped_locks destructing after their
mutexes.
Optimized insertion of grouped slots so it doesn't take O(n) time
anymore.