refactor languages crud
Merge remote-tracking branch 'remotes/origin/0.4.0' into 0.4.0