Improve MethodGenerationContext

- avoid mutation
- move distinction between normal methods and primitives into class
- use lastMethodSourceSection properly

Signed-off-by: Stefan Marr <git@stefan-marr.de>
Move some object creation to method generation context

Signed-off-by: Stefan Marr <git@stefan-marr.de>
Use the outer source section

Signed-off-by: Stefan Marr <git@stefan-marr.de>