Fixes #604 Crash on crafting

The AE2 has in the contract that the item field in an IAEItemDefinition can be null due to the fact, if a special item is deactivated. This needs to be checked.

The base code was enhanced through Javadoc and split in responsibilities
Merge pull request #605 from thatsIch/b-604-craftingcrash

Fixes #604 Crash on crafting