Software Design for an Intelligent Attitude Determination and Control System