splitting reactors.go into smaller files