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
Automatically initializing EntityWorld on constructor

Second parameter on the EntityWorld constructor in case you don´t want
automatic DataAttribute processing
Fixing Issue #45 and unit Tests
Fix unit tests
Minor change on TagManager
Merge pull request #1 from thelinuxlich/master

updating to latest revision
Added Compilation Symbol Called ForceINT32
Merge pull request #2 from thelinuxlich/master

Added Compilation Symbol Called ForceINT32
Update EntityManager.cs
Merge pull request #3 from thelinuxlich/master

Update EntityManager.cs
Enabled generic Entity.AddComponent<T>

Fixed: All the AddComponent<T>(IComponent component) method chain was
dead code by default:
entity.AddComponent(new MyComponent());
always chose non-generic Entity.AddComponent(IComponent component)
IComponent<T> interface is obsolete

Use entity.AddComponent(derived as BaseComponent) if you wish to use
derived component as a base component
Made use of generic EntityManager.AddComponent<T> in Entity.AddComponentFromPool<T>
AddComponentFromPool<T>(Action<T> init)

Implemented a method that allows you to add a poolable component
completely initialized:
so that Systems are notified about the component with all data already
set.
Merge pull request #55 from Maximusya/AddComponentFromPool-with-init-code

Add component from pool to entity after running init code
Merge pull request #4 from thelinuxlich/master

update to latest revision
Implemented ComponentTypeManager initialization

Implemented ComponentTypeManager initialization:
- from assemblies (searches for valid Components);
- from types (searches for valid Components);
ArgumentException when initializing ComponentTypeManager with invalid Type

- If one of the Types a ComponentTypeManager is initialized with does
not come from IComponent, throw ArgumentException;
- added ignoreInvalidTypes parameter to suppress the afore mentioned
ArgumentException