TypeInfo <= superType

TypeInfo consegue saber qual é o seu superTipo.

Método retorna algo apenas para classes e apenas se a superclasse for
diferente de java.lang.Object.

WAY-265
AutoPojoProcessor com suporte a herança

@AutoPojo trata corretamente classes que herdam de outras com métodos
igualmente abstratos.

WAY-266
Merge pull request #142 in WAY/way from feature/WAY-264-permitir-autopojo-tratar-de-hierarquia to release/1.18.0

* commit 'a372c8442b8b5e66f2131eb590fe2fa88e32858b':
  AutoPojoProcessor com suporte a herança
  TypeInfo <= superType
objectos :: way :: 1.18.0-SNAPSHOT
@AutoPojo: não sobrescrever métodos já sobrescritos

Quando há herança, não fazer o pojo sobrescrever um método abstrato da
superclasse que já tenha sido sobrescrito na subclasse. 

Assim, o Pojo gerado não altera o comportamento desse método.

WAY-267
Merge pull request #144 in WAY/way from feature/WAY-267-nao-sobrescrever-metodos-ja-sobrescritos to release/1.18.0

* commit '5c79cfe8a725339a276f1c4941adf3328cc82d9f':
  @AutoPojo: não sobrescrever métodos já sobrescritos
way-auto: tratamento de inner classes

way-core não tratava corretamente inner classes. Em particular, quando
um método referenciava em seu retorno ou como parâmetro uma classe/iface
que é declarada dentro de outra classe/iface, os imports não estavam
sendo gerados.

WAY-268
Merge pull request #145 in WAY/way from bugfix/WAY-268-autounsupported-metodo-com-parametros to release/1.18.0

* commit '93e2f2d91c5b0cea648b0a521aedbdbbb28dfbe3':
  way-auto: tratamento de inner classes
Inner classes: imports devem ser gerados sempre

Mesmo quando as classes estiverem no mesmo pacote, sempre gerar os
imports de inner classes. 

WAY-272
Merge pull request #146 in WAY/way from bugfix/WAY-272-mais-innerclasses-import-nao-e-gerado to release/1.18.0

* commit 'aa85d0c0f6eef8b7e8cd1186b185f9b8cf5be911':
  Inner classes: imports devem ser gerados sempre
NameInfo: corrige ArrayIndexOutOfBoundsException

Mais defensivo na implementação de getSimpleName().

WAY-273
Merge pull request #147 in WAY/way from bugfix/WAY-273-npe-variableelementwrapper.toparameterinfo to release/1.18.0

* commit 'ffd77a5982a3226e721c5b61142ecbac247f128c':
  NameInfo: corrige ArrayIndexOutOfBoundsException
TypeInfo saber as classes declaradas internamente

TypeInfo é capaz de saber quais as classes / interfaces que foram
declaradas internamente.

WAY-276
@AutoBuilder: caso mais simples

No caso mais simple replica o Builder do @AutoPojo.

Adicionalmente, corrige um bug em TypeMirrorWrapperPrimitive que não
instancia a subclasse correta de SimpleTypeInfo.

WAY-275
@AutoBuilder: atributos opcionais

Adiciona tratamento aos atributos opcionais.

Adicionalmente, altera AbstractAnnotationProcessor de modo a facilitar a
ativação/desativação da impressão do artefato gerado.

WAY-277
@AutoOptional: @AutoPojo + Optional

Implementação de @AutoPojo que gera um Builder com método opcionais.

WAY-278
Merge pull request #148 in WAY/way from feature/WAY-274-builderpojo-atraves-de-uma-interface to release/1.18.0

* commit 'c259863197d9bceaace16524633551bb3cb0027a':
  @AutoOptional: @AutoPojo + Optional
  @AutoBuilder: atributos opcionais
  @AutoBuilder: caso mais simples
  TypeInfo saber as classes declaradas internamente
Prefixos nos resources

Utiliza o nome do módulo como prefixo para os resources.

Isto foi necessário pois @AutoPojo estava encontrando os templates de
@AutoOptional no Eclipse.

WAY-279
Merge pull request #150 in WAY/way from bugfix/WAY-279-pojo-optional-conflitos-nos-resources to release/1.18.0

* commit 'e5641374e5304624989eefa8d134b83a6ef917d7':
  Prefixos nos resources
Corrige MethodInfo.hasSameSignature()

Na sobrescrita de métodos, se a superclasse define:

    Superclass self();
    
e a subclasse sobrescreve alterando o retorno para algo mais específico:

    Subclass self();
    
é uma sobrescrita válida.

WAY-281