How can I calculate a flightpath given a set of waypoints? I have made a GUI that allows the user to create waypoints defined by latitude, longitude, altitude, and time-of-arrival. I'm looking for some software that can generate a flightpath between the waypoints.

For example, say that I have placed 5 waypoints. All that I know is that I want my aircraft to be at those five points in space at the times specified. To create my 'flightpath', I want to calculate the latitude, longitude, altitude, pitch, roll, yaw, and velocity of the aircraft as it moves from one waypoint to the next. I'd like to calculate those values for time intervals of, say, one second. 

I've made a hackish solution, but it isn't very realistic. Someone must have tackled this problem before. Does anyone have any suggestions on software or algorithms I can use?
The Haversine equations will calculate the bearing and distance between any latitude/longitude pair, and can calculate the location and next bearing for points along a Great Circle. 

They go back to the days of sail, shortly after the invention of the marine chronometer, which allowed calculation of the current longitude. As such they assume that the points are on the surface of an idea sphere; as Earth is slightly oblate, there is an error of upto 0.6% in calculations of locations. For any realistic altitude, the oblateness (23 km difference between polar and equatorial radius) is likely to be larger than the change in altitude.

A discussion of them is here http://www.movable-type.co.uk/scripts/latlong.html