fixes bug in CompositeFilter.

Problem: ClassCastException in some cases

Solution:
Adding an instance of check at the appropriate place.

Notes:
There may remain an issue with the SUBSTRACTION case.

git-svn-id: file:///svnroot/spoon/trunk/spoon-core@2403 b1f50995-73fd-43b8-8ca2-fbc405a04e82
annotation Facotry #annotation fix to avoid adding to a unmodifiableList
Merge pull request #9 from fangzhen/annotationFactoryFix

Fix AnnotationFacotry#annotate() to avoid adding to a unmodifiableList
annotation Facotry #annotation fix to avoid adding to a unmodifiableList
Merge branch 'master' of github.com:INRIA/spoon
refactors CtStatementList: removes the useless generic parameter <R>
refactors CtBlock: now extends CtStatementList

one can thus write:
for (CtStatement s : block) {
  l.add(s);
}
refactors CtCase: now extends CtStatementList

one can thus write:
for (CtStatement s : case) {
 l.add(s);
}
specifies and implements the natural remove operation

for (CtStatement s : body) {
  body.removeStatement(s);
}

assertEquals(0,body.getStatements().size());
fixes a bug for generics at the model level
Merge branch 'master' of https://github.com/INRIA/spoon
fixes bug on CtStatementImpl.insertAfter

- ClassCastException was being thrown when trying to cast to
CtBlock. now the cast is made to CtStatementList.
- added test class spoon.test.ctCase.SwitchCaseTest and
resource test class spoon.test.ctCase.ClassWithSwitchExample
to test both insertAfter and insertBefore.