Changes done by Ryan/Tucker to work out hte API.