That is very similar to the method used in Shattered worlds. FRom what I have noticed, is that you get many more classes with many more functions, but all ships of one class are the same. When you attempt to vary the stats on individual ships, you may accidently create a hybrid class which is a nightmare to balance.