separate base and compile-time components of MPI.jl