Object Pooling method calls

When using Object Pooling from a .NET language, objects passed back to the LINCEnvironment need to be marshaled in a particular way.

The standard method calls that pass objects do not cast the objects correctly, leading to runtime errors. The solution is to use the 'Pooled' versions of these methods in your code.