rearrange app to module pattern
size gate functionality done
slim down user service
size gate functionality done