What is a homomorphism and what does "structure preserving" mean?
There are many sorts of "structures" in mathematics.
Consider the following example: On a certain set $X$ an addition is defined. This means that some triples $(x,y,z)$ of elements of $X$ are "special" in so far as $x+y=z$ is true. Write $(x,y,z)\in{\tt plus}$ in this case. To be useful this relation ${\tt plus}\subset X^3$ should satisfy certain additional requirements, which I won't list here.
Assume now that we have a second set $Y$ with carries an addition ${\tt plus'}$ (satisfying the extra requirements as well), and that a certain map $$\phi:\quad X\to Y,\qquad x\mapsto y:=\phi(x)$$ is defined by a formula, some text, or geometric construction, etc. Such a map is called a homomorphism if $$(x_1,x_2,x_3)\in{\tt plus}\quad\Longrightarrow\quad\bigl(\phi(x_1),\phi(x_2),\phi(x_3)\bigr)\in{\tt plus'}\tag{1}$$ for all triples $(x_1,x_2,x_3)$.
In $(1)$ the idea of "structure preserving" works only in one direction: special $X$-triples are mapped to special $Y$-triples. Now it could be that the given $\phi$ is in fact a bijection, and that instead of $(1)$ we have $$(x_1,x_2,x_3)\in{\tt plus}\quad\Longleftrightarrow\quad\bigl(\phi(x_1),\phi(x_2),\phi(x_3)\bigr)\in{\tt plus'}$$ for all triples $(x_1,x_2,x_3)$. In this case $\phi$ is called an isomorphism between the structures $X$ and $Y$. The elements $x\in X$ and the elements $Y\in Y$ could be of totally different "mathematical types", but as far as addition goes $X$ and $Y$ are "structural clones" of each other.
It is, in short, highly context dependent. Isomorphisms constitute a renaming of points in a space and do not change any of the properties we care about for that particular space.
An isomorphism of vector spaces preserves the properties we care about in a vector space. If you are a linearily independent set in the domain, you will form a linearily independent set when mapped to the image. If you are a subspace here, you are a subspace there. As far as linear algebra is concerned, the two sets just have elements with different names.
An isomorphism of topological spaces, although never called this, is a homeomorphism. If I am an open set in the domain, I am an open set in the image. If I am connected in the domain, I am connected etc. As far as topology is concerned, we just renamed a bunch of points.
Same goes for isometries of metric spaces, diffeomorphisms on manifolds, group isomorphisms, ring isomorphisms and so on.
In a more abstract level, being equal "up to isomorphisms" says that you have two instances of the same type. Consider for example what is a square? The word square may refer to two things: square as a shape (type of shape) --- such as "we have square, rectangle, ball, line, etc". But it can also refer to a particular square that you draw into a plane. In the second sense, there are infinitely many squares, although each of them represents the shape "square".
It is reasonable to consider, what they all have in common. One approach is to say that you can map a square into any other with a "structure-preserving" bijection. In this case, the "structure"-preserving will probably mean that it takes "equally long line segments" to "equally long line segments" and right angles to right angles.
More generally, mathematical objects are usually described as a set and a structure---the structure may be various kinds of additions, multiplications, compositions, ability to take limits or derivatives, smoothness or whatever. A homomorphism is then a map that preserves this structure, whatever it is --- it takes a sum to a sum, a difference to a difference, a smooth vector field to a smooth vector field, a square to a square. The individual definitions differ from case to case, but the idea is always the same.
Isomorphism is maybe more intuitive then homomorphism. Homomorphism means that it preserves structure in the above sense, but some information may be lost (you may map everything to zero, for example).