Add some features

    1. Add *.swp to .gitignore.
    2. Add file dump.h for debug.
    3. Fix a bug that lua stack will remain a object after calling get_length function in LuaHelpers.h.
    4. Complete Iterator.h. Now we can use Iterator to iterate a table.
Merge pull request #53 from sKabYY/skabyy

Add some features
Added ContainerConstructionTraits for generalized Container support

The introduction of an additional trait allows to specify how to obtain
a container from a raw pointer which allows types that provide that
functionality for shared_ptr via shared_from_this to be managed by a
shared_ptr.
Added Stack::is_a

The is_a function provides an equivalent to the
lua_isnumber, lua_isstring etc. functions for registered
custom types.
Allow free functions as member functions

Added the functionality to use free functions with a fitting
first parameter as member functions.
Added ::is<T> member function to LuaRef

for consistency with the Stack::is_a function
a is<T> member function has also be added to
LuaRef to check for custom types.
Updated Manual

The manual now also mentions the possibility of
adding free functions with a "this argument" to
classes.
fixed absolute index in LuaRef::tostring

the tostring function was using a absolute index
instead of -1 which lead to the wrong value being
read to a string and potentially resulting in a
exception when assigning NULL to std::string.
fixed stack unbalancing in Userdata::checkClass

There was a case where the checkClass (used by Stack::is_a
and LuaRef::is) would unbalance the stack.
checking for custom types returns false on nil
Per access container getPointer and exception catching

When calling into C++, exceptions are caught and translated into Lua
errors.

A containers' get pointer function is called on each access rather than
only when the UserdataShared is created.  This allows any code in the
container that checks pointer validitly to work.
Use main thead in LuaRef

LuaRef stores the main thread in it's m_L member, rather than what ever
thread created it.