source-gen: Reorganize Generator
source-gen: Add alias generation (--alias)
source-gen: Add abstract class generation (--abstract)