Classes are compiled based on dependency, just like they would be in C++, Java, or other compiled languages. Adding a class that's "first" won't help resolve the error. You need to fix the class that's failing, then recompile all of the classes. Most likely, the class that's failing is using an older API version, so you might try updating it to a newer version.
For example, if you consider the following code:
public class A {
public B value;
}
public class B {
public A value;
}
If classes were strictly compiled alphabetically, then this code could not compile. Instead, the compiler is smart enough to start compiling one of the classes (A or B, doesn't matter), pause with the partial definition of that class, then move to the other class, referring to the partial definition of the first. Renaming these classes won't change anything.
Edit: Just confirmed, the Address data type (for BillingAddress, MailingAddress, etc) was introduced in v30.0 of the API. The class, and any class that depends on it, must be version 30.0 or higher, or you'll get this error.