A relational first order structure is homogeneous if every isomorphism between finite substructures extends to an automorphism. Familiar examples of such structures include the rational numbers with the usual order relation, the countable random and so called Rado graph, and many others. Countable homogeneous structures arise as Fraı̈ssé limits of amalgamation classes of finite structures, and h...