AR has its order argument in fit while ARMA has its argument in __init__. Is there some reason for this difference, or is this just a legacy issue?
Partially legacy. Partially by design. AR.fit can do order selection as part of the estimation. May deserve a rethink.