Added TestRemoveComponent

TestRemoveComponent tests removal of a component that has never been added to an entity - as well as multiple removal of a component that has been added. Demonstrates failing tests that the subsequent patch would make passing.
Fixed RemoveComponent inconsistent behavior

Fixed inconsistent behavior of EntityManager.RemoveComponent: the method might silently remove absent component or might occasionally throw NullReferenceException or IndexOutOfRangeException caused by absent components container (fresh new EntityWorld) and internal Bag<IComponent> data structure.
Appropriate test are added to TestGeneral.cs
Merge pull request #44 from Maximusya/inconsistent-remove-component

Fixed inconsistent behaviour of EntityManager.RemoveComponent