Factor out ensime into seperate files