Magical: Medical Lay Language Generation via Semantic Invariance and Layperson-tailored Adaptation