In essence, relativity is a series of counterbalancing asymptotic functions which when combined make for a stable, if unintuitive, theory of space-time.
Actually, just to clarify, because I want to counter the idea that these different effects need to be hacked together to fix the various problems: They are all just different aspects of one underlying type of transformation.
I'll give a pretty relevant analogy: Rotations in normal, three dimensional Euclidean space.
So let's forget about relativity for a second. Assume there is a vector pointing from the origin of your coordinate system to the point (1, 1, 1). If you were to rotate the vector 30 degrees around the z axis, and then afterwards 50 degrees around the x axis, what will the new coordinates be? Or equivalently, when you rotate not the vector but your own coordinate system, your frame of reference, in the corresponding opposite direction?
Well, I have no idea, I would have to calculate the resulting coordinates using rotation matrices. Now, here is a property of rotation matrices: They leave the length of the vector unchanged, like they intuitively should. But what if you didn't know about rotations? What if someone came to you and said, well here are the coordinate transformations you should use, without telling you about rotations? By playing around with them you would find that, as by magic, the change in the three component lengths of your original vector are always such that the total length remains unchanged. Isn't that a big coincidence?
Well, no, because the argument goes the other way around. You know from the start that rotations should leave the length of vectors unchanged, and together with some other properties (for any rotation, there should always an inverse rotation), you can
derive the class of matrices you can use for rotations. It is exactly those matrices that leave the length of any vector unchanged.
Now, back to relativity: Here, the world is described not in three dimensional space, but in a peculiar 4 dimensional space that includes time as a fourth dimension. To change in between frames of references, you need to do coordinate transforms, which actually correspond to rotations in this special space. The transformation matrices are the
Lorentz transformations. Much as rotation matrices in Euclidean space leave the length of the vector unchanged, i.e.
invariant, these Lorentz transformations leave certain other properties invariant (namely the equivalent property to length, which has a physical interpretation).
So the Lorentz transformations describe how to do coordinate changes in this 4D space, warping time and space in the process. Length contraction and time dilation are just special cases of the general transformation, much as you can think of special cases of Euclidean rotations. But you don't have to come up with time dilation, length contraction etc. separately to fix your theory in a patchwork like fashion. You start with a general type of transformation, and these different effects just fall out of it.
And again, much as you could derive the properties of rotation matrices from some underlying principles, you can do the same for Lorentz transformations. If I remember correctly, it goes like this: If the speed of light is constant in any frame of reference; If all frames of reference are equivalent; and if the allowed transformation should be linear (i.e. describable with simple matrix multiplications); then you can derive exactly how the corresponding matrices should look like, and these matrices that fulfil the criteria are exactly the Lorentz transformations. You will then find such weird effects on time and space. But the starting point are these assumptions. See
wikipedia.
Basically, if you can accept that time and space are interwoven, then the Lorentz transformation are pretty much the simplest thing you can come up with while staying consistent with your assumptions. If you can accept these assumptions and are ready to face unintuitive consequences, the resulting theory comes about without hacking.