Theory and Practice of Lineage Tracing