The tracks data type is implemented as a named associative list, but no user visible attributes are defined.
Users can define and add attributes to the tracks datatype.
Note that scheme tracks can be manipulated entirely in scheme since they are just scheme lists. This code is provided to make it easy for C routines to create and manipulate the tracks, and while it is at it, provide routines for scheme to create and manipulate tracks. If object is a tracks object, the return the number of tracks.