Introduce AnalyzeCodeChangeUsecase

Also reworked github adapter.