FLEKS: A Flexible Particle-in-Cell code for Multi-Scale Plasma Simulations