Much needed data manager inline documentation

Comment data manager files appropriatly
A few minor comment fixups
inline a few trivial functions
Comments describing what a item segment looks like in file
Don't force caller to cast data pointer to char *
Add a few mission item types and make sure the data is written the media after a write
Need to rethink and re-wire much of this mission thing

Presently there are two redundant data structures intended to represent
mission waypoints, mission_item_s and __mavlink_mission_item_t.
mission_item_s is virtually unused but seems to be intended for
navigation use. __mavlink_mission_item_t is heavilly used by the
navigation code in mavlink but is essentially a representation of the
mavlink mesages,

present action:

- align the mission_item_s content with the relevant parts of the
mavlink message and drop message data not relevant to navigation.

Future actions (todo):

- Move the navigation code in mavlink to the navigator.
- Use the data manager as the central waypoint storage for
mission_item_s instances that are populated by mavlink and used by the
navigator for navigation.
- Decouple missionlib from mavlink. Most of the missionlib stuff belongs
in navigation.
Merge pull request #458 from jean-m-cyr/geofence

Much needed data manager inline documentation