This crate is used internally by TinyChain. It provides generic Id, Map, and Tuple types.
Example: ```rust use safecast::TryCastFrom; use tcgeneric::{Id, Map, Tuple};
let tuple = Tuple::<(Id, String)>::fromiter(vec![]); asserteq!(Map::optcastfrom(tuple).unwrap(), Map::default()); ```
For more information on TinyChain, see: http://github.com/haydnv/tinychain