From what I understand, the magnetic force is just a relativistic effect of the electric force, and I understand how this is can be the case when considering the magnetic field generated by a current- carrying wire (length contraction of space between the electrons so they appear to be more concentrated than the positively charged ions to a 'stationary' observer, so the observer sees the wire as being negatively charged). However I do not understand why there would be a magnetic field around a permanent magnet. My teacher's explanation of permanent magnets involved there being permanent dipoles inside the magnet, however If you have two oppositely charged particles close to each other you will have an electric field around them, and not a magnetic field. I don't quite understand how lined up dipoles will produce a magnetic field if there is no motion of charges?
In short, your teacher is right. Permanent magnets (ferromagnetic materials) are divided in regions in which there's a net dipole moment, such that when all of them are added up there's a magnetic field. The dipole moment is not due only to the motion of charges, it is due to the fact that electrons have an intrinsic dipole moment, known as spin, and an orbital dipole moment due to the "rotation" around the atom to which they belong. Permanent magnets are arranged microscopically in such a way that all dipole momenta give a net dipole and therefore a magnetic field.
For more information check: Wikipedia article about ferromagnetism
The magnetic field of a permanent ferromagnet is generated by the individual magnetic dipole moments of unpaired electrons within it. In a ferromagnet the unpaired electrons line up their spins in the same direction so their individual magnetic dipoles sum to give a macroscopic magnetic field.
The magnetic field of an electron is a purely quantum effect and is not due to any hypothetical rotation of the electrons.