diff --git a/ANX.Framework/NonXNA/AddInSystemFactory.cs b/ANX.Framework/NonXNA/AddInSystemFactory.cs
index f2a43673..df92ca0a 100644
--- a/ANX.Framework/NonXNA/AddInSystemFactory.cs
+++ b/ANX.Framework/NonXNA/AddInSystemFactory.cs
@@ -173,6 +173,8 @@ namespace ANX.Framework.NonXNA
             }
 
             creators.Add(creatorName, creator);
+
+            logger.Debug("added creator '{0}'. Total count of registered creators is now {1}.", creatorName, creators.Count);
         }
 
         public bool HasFramework(String name)
@@ -224,12 +226,20 @@ namespace ANX.Framework.NonXNA
                 return defaultCreators[type] as T;
             }
 
+            logger.Error(String.Format("couldn't find a DefaultCreator of type '{0}'. Listing all registered creators: ", type.FullName));
+            foreach (KeyValuePair<Type, ICreator> kvp in defaultCreators)
+            {
+                logger.Error(kvp.Key);
+            }
+
             throw new AddInLoadingException(String.Format("couldn't find a DefaultCreator of type '{0}'", type.FullName));
         }
 
         public void SetDefaultCreator<T>(T creator) where T : class, ICreator
         {
-            defaultCreators[typeof(T)] = creator;
+            Type t = typeof(T);
+            logger.Debug("setting DefaultCreator by type: {0}", t.FullName);
+            defaultCreators[t] = creator;
         }
 
         public void SetDefaultCreator(string creatorName)
@@ -241,7 +251,21 @@ namespace ANX.Framework.NonXNA
 
             ICreator creator = null;
             creators.TryGetValue(creatorName.ToLowerInvariant(), out creator);
-            defaultCreators[creator.GetType().GetInterfaces()[0]] = creator;
+            if (creator != null)
+            {
+                Type t = creator.GetType().GetInterfaces()[0];
+                if (t == typeof(ICreator))
+                {
+                    //TODO: exception handling
+                    t = creator.GetType().GetInterfaces()[1];
+                }
+                logger.Debug("setting DefaultCreator by name: '{0}'. Resolved type: '{1}'. ", creatorName, t.FullName);
+                defaultCreators[t] = creator;
+            }
+            else
+            {
+                throw new AddInLoadingException(String.Format("couldn't set DefaultCreator by name: '{0}'. ", creatorName));
+            }
         }
 
         public OperatingSystem OperatingSystem
@@ -271,11 +295,10 @@ namespace ANX.Framework.NonXNA
                     case "ANX.Framework.NonXNA.IRenderSystemCreator":
                         IRenderSystemCreator renderSystemCreator = creator as IRenderSystemCreator;
                         IRenderSystemCreator defaultRenderSystemCreator = null;
-                        try
+                        if (defaultCreators.ContainsKey(typeof(IRenderSystemCreator)))
                         {
-                            defaultRenderSystemCreator = GetDefaultCreator<IRenderSystemCreator>();
+                            renderSystemCreator = defaultCreators[typeof(IRenderSystemCreator)] as IRenderSystemCreator;
                         }
-                        catch { }
 
                         if (renderSystemCreator != null && (defaultRenderSystemCreator == null || defaultRenderSystemCreator.Priority > renderSystemCreator.Priority))
                         {
@@ -285,11 +308,10 @@ namespace ANX.Framework.NonXNA
                     case "ANX.Framework.NonXNA.ISoundSystemCreator":
                         ISoundSystemCreator soundSystemCreator = creator as ISoundSystemCreator;
                         ISoundSystemCreator defaultSoundSystemCreator = null;
-                        try
+                        if (defaultCreators.ContainsKey(typeof(ISoundSystemCreator)))
                         {
-                            defaultSoundSystemCreator = GetDefaultCreator<ISoundSystemCreator>();
+                            defaultSoundSystemCreator = defaultCreators[typeof(ISoundSystemCreator)] as ISoundSystemCreator;
                         }
-                        catch { }
 
                         if (soundSystemCreator != null && (defaultSoundSystemCreator == null || defaultSoundSystemCreator.Priority > soundSystemCreator.Priority))
                         {
@@ -299,11 +321,10 @@ namespace ANX.Framework.NonXNA
                     case "ANX.Framework.NonXNA.IInputSystemCreator":
                         IInputSystemCreator inputSystemCreator = creator as IInputSystemCreator;
                         IInputSystemCreator defaultInputSystemCreator = null;
-                        try
+                        if (defaultCreators.ContainsKey(typeof(IInputSystemCreator)))
                         {
-                            defaultInputSystemCreator = GetDefaultCreator<IInputSystemCreator>();
+                            defaultInputSystemCreator = defaultCreators[typeof(IInputSystemCreator)] as IInputSystemCreator;
                         }
-                        catch { }
 
                         if (inputSystemCreator != null && (defaultInputSystemCreator == null || defaultInputSystemCreator.Priority > inputSystemCreator.Priority))
                         {
diff --git a/ANX.Framework/Properties/AssemblyInfo.cs b/ANX.Framework/Properties/AssemblyInfo.cs
index eb385917..92220570 100644
--- a/ANX.Framework/Properties/AssemblyInfo.cs
+++ b/ANX.Framework/Properties/AssemblyInfo.cs
@@ -31,8 +31,8 @@ using System.Runtime.InteropServices;
 //
 // Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern 
 // übernehmen, indem Sie "*" eingeben:
-[assembly: AssemblyVersion("0.4.31.*")]
-[assembly: AssemblyFileVersion("0.4.31.0")]
+[assembly: AssemblyVersion("0.4.32.*")]
+[assembly: AssemblyFileVersion("0.4.32.0")]
 
 [assembly:InternalsVisibleTo("ANX.Framework.Windows.DX10")]
 [assembly:InternalsVisibleTo("ANX.RenderSystem.Windows.DX11")]
diff --git a/InputSystems/ANX.InputSystem.OpenTK/ANX.InputSystem.OpenTK.csproj b/InputSystems/ANX.InputSystem.OpenTK/ANX.InputSystem.OpenTK.csproj
index c9c1d73e..3b9568fb 100644
--- a/InputSystems/ANX.InputSystem.OpenTK/ANX.InputSystem.OpenTK.csproj
+++ b/InputSystems/ANX.InputSystem.OpenTK/ANX.InputSystem.OpenTK.csproj
@@ -45,11 +45,7 @@
     </Reference>
     <Reference Include="System" />
     <Reference Include="System.Core" />
-    <Reference Include="System.Xml.Linq" />
-    <Reference Include="System.Data.DataSetExtensions" />
     <Reference Include="Microsoft.CSharp" />
-    <Reference Include="System.Data" />
-    <Reference Include="System.Xml" />
   </ItemGroup>
   <ItemGroup>
     <Compile Include="Creator.cs" />
diff --git a/InputSystems/ANX.InputSystem.OpenTK/Mouse.cs b/InputSystems/ANX.InputSystem.OpenTK/Mouse.cs
index 86c90cc0..a71bb8bd 100644
--- a/InputSystems/ANX.InputSystem.OpenTK/Mouse.cs
+++ b/InputSystems/ANX.InputSystem.OpenTK/Mouse.cs
@@ -58,16 +58,17 @@ namespace ANX.InputSystem.OpenTK
 {
     public class Mouse : IMouse
     {
+        private IntPtr windowHandle;
 
         public IntPtr WindowHandle
         {
             get
             {
-                throw new NotImplementedException();
+                return this.windowHandle;
             }
             set
             {
-                throw new NotImplementedException();
+                this.windowHandle = value;
             }
         }
 
diff --git a/RenderSystems/ANX.Framework.Windows.GL3/Creator.cs b/RenderSystems/ANX.Framework.Windows.GL3/Creator.cs
index efe37e0a..bd2845e2 100644
--- a/RenderSystems/ANX.Framework.Windows.GL3/Creator.cs
+++ b/RenderSystems/ANX.Framework.Windows.GL3/Creator.cs
@@ -97,6 +97,7 @@ namespace ANX.Framework.Windows.GL3
 		#region RegisterRenderSystemCreator
 		public void RegisterCreator(AddInSystemFactory factory)
 		{
+            logger.Debug("adding OpenGL3 RenderSystem creator to creator collection of AddInSystemFactory");
 			factory.AddCreator(this);
 		}
 		#endregion
diff --git a/Samples/SimpleSprite/Game1.cs b/Samples/SimpleSprite/Game1.cs
index 6a1e24b4..86345d5e 100644
--- a/Samples/SimpleSprite/Game1.cs
+++ b/Samples/SimpleSprite/Game1.cs
@@ -81,6 +81,14 @@ namespace WindowsGame1
         {
             graphics = new GraphicsDeviceManager(this);
             Content.RootDirectory = "SampleContent";
+
+            graphics.PreparingDeviceSettings += new EventHandler<PreparingDeviceSettingsEventArgs>(graphics_PreparingDeviceSettings);
+        }
+
+        void graphics_PreparingDeviceSettings(object sender, PreparingDeviceSettingsEventArgs e)
+        {
+            e.GraphicsDeviceInformation.PresentationParameters.DepthStencilFormat = DepthFormat.None;
+            e.GraphicsDeviceInformation.PresentationParameters.BackBufferFormat = SurfaceFormat.Bgr565;
         }
 
         /// <summary>