IndexBuffer3d and VertexBuffer3D with implementation of UploadToByteArray
verified working with a modified version of Starling using those 2 functions.
code use unsafe, yet should be optimized
Merge branch 'origin/ps-amf'

Conflicts:
	mcs/class/pscorlib_aot/pscorlib_aot-monodroid.csproj
	mcs/class/pscorlib_aot/pscorlib_aot-monotouch.csproj
	mcs/class/pscorlib_aot/pscorlib_aot-net_4_0_monomac.csproj
Disable in loader.play in function unloadAndStop the "throw  new System.NotImplementedException()" , as I don't need an implementation there yet, but I need to keep going..
ByteArray -  basic implementation of ByteArray.readObject() for amf3 object only.
I tested it with a byteArray containing AMF serialized from an Array
ByteArray.cs with AMF parsing updated to be set to the right position
Amf3Parser & ByteArray readObject - remove the need to set position, its already correct.
Merge branch 'master'

Conflicts:
	mcs/class/pscorlib_aot/pscorlib_aot-monodroid.csproj
AGALConverter - access by index should use int( ) , also fixed a missing ")" in the generated code.
BitmapData - implemented clone()
Context3D.cs - simple implementation of setProgramConstantsFromByteArray , it will need some optimizations ( right now, it does a bunch of byte[] -> float[] copy , which can be avoided)
ByteArray - inflate implemented.
TextureBase.cs - LOD Bias - removed the NotImplementedException for now
Program3D.cs - added a search uniform to find the register included in the area requested.
Context3D.cs - better implementation of setProgramConstantsFromByteArray , for arrays.
AgalConverter , reduced hardcoded array size from 256 down to 128
Merge branch 'master'

Conflicts:
	mcs/class/pscorlib/flash/display3D/IndexBuffer3D.cs
	mcs/class/pscorlib/flash/display3D/VertexBuffer3D.cs
IndexBuffer3D.cs - re-implemented uploadFromByteArray , as the version from master is just wrong , what is in the byteArray is a list of short uint16 , not int32
BitmapData.play - fillRect , protect against Null data (data is null after bitmap is disposed)
Context3D:
always write to mTemp at the offset of the register, so we can upload multiple times arrays for example
Merge branch 'origin/master'

Conflicts:
	mcs/class/pscorlib/flash/display3D/IndexBuffer3D.cs
	mcs/class/pscorlib/flash/utils/ByteArray.cs