That's an Abstract Factory Pattern. I don't believe several classes is a requirement, but I don't have any books here to check it.
No it isn't. An Abstract Factory is one level of abstraction higher than the Simple Factory - it returns one of several factories (simple or abstract.) When in doubt, or books without, Google.
The kludge feeling would be reduced if you BlitzMax implemented
No it wouldn't. Using a method as a constructor simply to get initialization of member variables is still a kludge, with or without overloading.