Create MetaInfo classes.
Create new modes.
Refactor Transformer.
Add ClassMetaInfo::currentMethod()
Use token code instead of own constants.
Create MethodHeadMode.
Remove reset() from TransformerInterface.
Add MethodMetaInfo::isConstructor().
Done MethodBodyMode.
Add Transformer::getMode().
Create tests for MethodHeadMode.
Skip modify interface.
Fix ClassMetaInfo::addImplements().
Remove TransformerInterface.
Make AbstractMode::$transform private.
Normal state of AbstractMetaInfo::$attribute is null.
Return TransformInterface.
Fix bug with mode switching in ExtendsMode.
Fix bug with mode switching in ImplementsMode.
Create ClassModeTest.
ExtendsModeTest
ImplementsModeTest
NamespaceModeTest
UseModeTest
Store MethodMetaInfo in SplDoublyLinkedList instead of array.
Fix scrutinizer bug.
Create AbstractNamespaceMode.
AbstractClassHierarchy
Merge branch 'feature/optimize-transformer' into develop