Gattling Frigate - I am allmost sure you need to give it primary and secondary although you wrote the ;--------gattling stuff------ line.
Try to add Primary=AGGattling and Secondary=AAGattling and see what happens.
Missle Cruiser - Maybe its because you put Primary=none so the engine thinks "none" is the name of the weapon and when it doesnt find it it causes internal error.
Or because of the NavalTargeting=1 this meens that the unit will use secondary weapon on underwater and you didnt give your unit secondary weapon.
Repair Boat -Maybe you need to change the projectile to AN=yes AG=no AA=no :|