Added robot model interface class

Addresses issues #8 and #9.
The `id_` should not be confused with index.  The ID simply must be unique and will be set upon construction (it will always be valid).  I don't think we will need to track the index internal to the trajectory point.  The trajectory itself will keep the order.  The `id_` will be used to look up points by *key*, so it must be unique.