changed back lightuserdata stuff from unilua, instead added newuserdata (C# edition) for more consistency with lua. Some more refactoring