diff --git a/cpp/.cvsignore b/inference/.cvsignore similarity index 100% rename from cpp/.cvsignore rename to inference/.cvsignore diff --git a/cpp/BayesNet-inl.h b/inference/BayesNet-inl.h similarity index 100% rename from cpp/BayesNet-inl.h rename to inference/BayesNet-inl.h diff --git a/cpp/BayesNet.h b/inference/BayesNet.h similarity index 100% rename from cpp/BayesNet.h rename to inference/BayesNet.h diff --git a/cpp/BayesNetPreconditioner.cpp b/inference/BayesNetPreconditioner.cpp similarity index 100% rename from cpp/BayesNetPreconditioner.cpp rename to inference/BayesNetPreconditioner.cpp diff --git a/cpp/BayesNetPreconditioner.h b/inference/BayesNetPreconditioner.h similarity index 100% rename from cpp/BayesNetPreconditioner.h rename to inference/BayesNetPreconditioner.h diff --git a/cpp/BayesTree-inl.h b/inference/BayesTree-inl.h similarity index 100% rename from cpp/BayesTree-inl.h rename to inference/BayesTree-inl.h diff --git a/cpp/BayesTree.h b/inference/BayesTree.h similarity index 100% rename from cpp/BayesTree.h rename to inference/BayesTree.h diff --git a/cpp/BinaryConditional.h b/inference/BinaryConditional.h similarity index 100% rename from cpp/BinaryConditional.h rename to inference/BinaryConditional.h diff --git a/cpp/Conditional.h b/inference/Conditional.h similarity index 100% rename from cpp/Conditional.h rename to inference/Conditional.h diff --git a/cpp/Doxyfile b/inference/Doxyfile similarity index 100% rename from cpp/Doxyfile rename to inference/Doxyfile diff --git a/cpp/Errors.cpp b/inference/Errors.cpp similarity index 100% rename from cpp/Errors.cpp rename to inference/Errors.cpp diff --git a/cpp/Errors.h b/inference/Errors.h similarity index 100% rename from cpp/Errors.h rename to inference/Errors.h diff --git a/cpp/Factor.h b/inference/Factor.h similarity index 100% rename from cpp/Factor.h rename to inference/Factor.h diff --git a/cpp/FactorGraph-inl.h b/inference/FactorGraph-inl.h similarity index 100% rename from cpp/FactorGraph-inl.h rename to inference/FactorGraph-inl.h diff --git a/cpp/FactorGraph.h b/inference/FactorGraph.h similarity index 100% rename from cpp/FactorGraph.h rename to inference/FactorGraph.h diff --git a/cpp/Factorization.h b/inference/Factorization.h similarity index 100% rename from cpp/Factorization.h rename to inference/Factorization.h diff --git a/cpp/GaussianBayesNet.cpp b/inference/GaussianBayesNet.cpp similarity index 100% rename from cpp/GaussianBayesNet.cpp rename to inference/GaussianBayesNet.cpp diff --git a/cpp/GaussianBayesNet.h b/inference/GaussianBayesNet.h similarity index 100% rename from cpp/GaussianBayesNet.h rename to inference/GaussianBayesNet.h diff --git a/cpp/GaussianConditional.cpp b/inference/GaussianConditional.cpp similarity index 100% rename from cpp/GaussianConditional.cpp rename to inference/GaussianConditional.cpp diff --git a/cpp/GaussianConditional.h b/inference/GaussianConditional.h similarity index 100% rename from cpp/GaussianConditional.h rename to inference/GaussianConditional.h diff --git a/cpp/GaussianFactor.cpp b/inference/GaussianFactor.cpp similarity index 100% rename from cpp/GaussianFactor.cpp rename to inference/GaussianFactor.cpp diff --git a/cpp/GaussianFactor.h b/inference/GaussianFactor.h similarity index 100% rename from cpp/GaussianFactor.h rename to inference/GaussianFactor.h diff --git a/cpp/GaussianFactorGraph.cpp b/inference/GaussianFactorGraph.cpp similarity index 100% rename from cpp/GaussianFactorGraph.cpp rename to inference/GaussianFactorGraph.cpp diff --git a/cpp/GaussianFactorGraph.h b/inference/GaussianFactorGraph.h similarity index 100% rename from cpp/GaussianFactorGraph.h rename to inference/GaussianFactorGraph.h diff --git a/cpp/GaussianFactorSet.h b/inference/GaussianFactorSet.h similarity index 100% rename from cpp/GaussianFactorSet.h rename to inference/GaussianFactorSet.h diff --git a/cpp/GaussianISAM.cpp b/inference/GaussianISAM.cpp similarity index 100% rename from cpp/GaussianISAM.cpp rename to inference/GaussianISAM.cpp diff --git a/cpp/GaussianISAM.h b/inference/GaussianISAM.h similarity index 100% rename from cpp/GaussianISAM.h rename to inference/GaussianISAM.h diff --git a/cpp/ISAM-inl.h b/inference/ISAM-inl.h similarity index 100% rename from cpp/ISAM-inl.h rename to inference/ISAM-inl.h diff --git a/cpp/ISAM.h b/inference/ISAM.h similarity index 100% rename from cpp/ISAM.h rename to inference/ISAM.h diff --git a/cpp/ISAM2-inl.h b/inference/ISAM2-inl.h similarity index 100% rename from cpp/ISAM2-inl.h rename to inference/ISAM2-inl.h diff --git a/cpp/ISAM2.h b/inference/ISAM2.h similarity index 100% rename from cpp/ISAM2.h rename to inference/ISAM2.h diff --git a/cpp/IndexTable.h b/inference/IndexTable.h similarity index 100% rename from cpp/IndexTable.h rename to inference/IndexTable.h diff --git a/cpp/JunctionTree-inl.h b/inference/JunctionTree-inl.h similarity index 100% rename from cpp/JunctionTree-inl.h rename to inference/JunctionTree-inl.h diff --git a/cpp/JunctionTree.h b/inference/JunctionTree.h similarity index 100% rename from cpp/JunctionTree.h rename to inference/JunctionTree.h diff --git a/cpp/Key.h b/inference/Key.h similarity index 100% rename from cpp/Key.h rename to inference/Key.h diff --git a/cpp/Makefile.am b/inference/Makefile.am similarity index 100% rename from cpp/Makefile.am rename to inference/Makefile.am diff --git a/cpp/NoiseModel.cpp b/inference/NoiseModel.cpp similarity index 100% rename from cpp/NoiseModel.cpp rename to inference/NoiseModel.cpp diff --git a/cpp/NoiseModel.h b/inference/NoiseModel.h similarity index 100% rename from cpp/NoiseModel.h rename to inference/NoiseModel.h diff --git a/cpp/Ordering.cpp b/inference/Ordering.cpp similarity index 100% rename from cpp/Ordering.cpp rename to inference/Ordering.cpp diff --git a/cpp/Ordering.h b/inference/Ordering.h similarity index 100% rename from cpp/Ordering.h rename to inference/Ordering.h diff --git a/cpp/SharedDiagonal.h b/inference/SharedDiagonal.h similarity index 100% rename from cpp/SharedDiagonal.h rename to inference/SharedDiagonal.h diff --git a/cpp/SharedGaussian.h b/inference/SharedGaussian.h similarity index 100% rename from cpp/SharedGaussian.h rename to inference/SharedGaussian.h diff --git a/cpp/SubgraphPreconditioner.cpp b/inference/SubgraphPreconditioner.cpp similarity index 100% rename from cpp/SubgraphPreconditioner.cpp rename to inference/SubgraphPreconditioner.cpp diff --git a/cpp/SubgraphPreconditioner.h b/inference/SubgraphPreconditioner.h similarity index 100% rename from cpp/SubgraphPreconditioner.h rename to inference/SubgraphPreconditioner.h diff --git a/cpp/SubgraphSolver-inl.h b/inference/SubgraphSolver-inl.h similarity index 100% rename from cpp/SubgraphSolver-inl.h rename to inference/SubgraphSolver-inl.h diff --git a/cpp/SubgraphSolver.h b/inference/SubgraphSolver.h similarity index 100% rename from cpp/SubgraphSolver.h rename to inference/SubgraphSolver.h diff --git a/cpp/SymbolMap.h b/inference/SymbolMap.h similarity index 100% rename from cpp/SymbolMap.h rename to inference/SymbolMap.h diff --git a/cpp/SymbolicBayesNet.cpp b/inference/SymbolicBayesNet.cpp similarity index 100% rename from cpp/SymbolicBayesNet.cpp rename to inference/SymbolicBayesNet.cpp diff --git a/cpp/SymbolicBayesNet.h b/inference/SymbolicBayesNet.h similarity index 100% rename from cpp/SymbolicBayesNet.h rename to inference/SymbolicBayesNet.h diff --git a/cpp/SymbolicConditional.h b/inference/SymbolicConditional.h similarity index 100% rename from cpp/SymbolicConditional.h rename to inference/SymbolicConditional.h diff --git a/cpp/SymbolicFactor.cpp b/inference/SymbolicFactor.cpp similarity index 100% rename from cpp/SymbolicFactor.cpp rename to inference/SymbolicFactor.cpp diff --git a/cpp/SymbolicFactor.h b/inference/SymbolicFactor.h similarity index 100% rename from cpp/SymbolicFactor.h rename to inference/SymbolicFactor.h diff --git a/cpp/SymbolicFactorGraph.cpp b/inference/SymbolicFactorGraph.cpp similarity index 100% rename from cpp/SymbolicFactorGraph.cpp rename to inference/SymbolicFactorGraph.cpp diff --git a/cpp/SymbolicFactorGraph.h b/inference/SymbolicFactorGraph.h similarity index 100% rename from cpp/SymbolicFactorGraph.h rename to inference/SymbolicFactorGraph.h diff --git a/cpp/VectorBTree.cpp b/inference/VectorBTree.cpp similarity index 100% rename from cpp/VectorBTree.cpp rename to inference/VectorBTree.cpp diff --git a/cpp/VectorBTree.h b/inference/VectorBTree.h similarity index 100% rename from cpp/VectorBTree.h rename to inference/VectorBTree.h diff --git a/cpp/VectorConfig.h b/inference/VectorConfig.h similarity index 100% rename from cpp/VectorConfig.h rename to inference/VectorConfig.h diff --git a/cpp/VectorMap.cpp b/inference/VectorMap.cpp similarity index 100% rename from cpp/VectorMap.cpp rename to inference/VectorMap.cpp diff --git a/cpp/VectorMap.h b/inference/VectorMap.h similarity index 100% rename from cpp/VectorMap.h rename to inference/VectorMap.h diff --git a/cpp/graph-inl.h b/inference/graph-inl.h similarity index 100% rename from cpp/graph-inl.h rename to inference/graph-inl.h diff --git a/cpp/graph.h b/inference/graph.h similarity index 100% rename from cpp/graph.h rename to inference/graph.h diff --git a/cpp/gtsam-broken.h b/inference/gtsam-broken.h similarity index 100% rename from cpp/gtsam-broken.h rename to inference/gtsam-broken.h diff --git a/cpp/gtsam.h b/inference/gtsam.h similarity index 100% rename from cpp/gtsam.h rename to inference/gtsam.h diff --git a/cpp/inference-inl.h b/inference/inference-inl.h similarity index 100% rename from cpp/inference-inl.h rename to inference/inference-inl.h diff --git a/cpp/inference.h b/inference/inference.h similarity index 100% rename from cpp/inference.h rename to inference/inference.h diff --git a/cpp/iterative-inl.h b/inference/iterative-inl.h similarity index 100% rename from cpp/iterative-inl.h rename to inference/iterative-inl.h diff --git a/cpp/iterative.cpp b/inference/iterative.cpp similarity index 100% rename from cpp/iterative.cpp rename to inference/iterative.cpp diff --git a/cpp/iterative.h b/inference/iterative.h similarity index 100% rename from cpp/iterative.h rename to inference/iterative.h diff --git a/cpp/testBayesNetPreconditioner.cpp b/inference/testBayesNetPreconditioner.cpp similarity index 100% rename from cpp/testBayesNetPreconditioner.cpp rename to inference/testBayesNetPreconditioner.cpp diff --git a/cpp/testBayesTree.cpp b/inference/testBayesTree.cpp similarity index 100% rename from cpp/testBayesTree.cpp rename to inference/testBayesTree.cpp diff --git a/cpp/testBinaryBayesNet.cpp b/inference/testBinaryBayesNet.cpp similarity index 100% rename from cpp/testBinaryBayesNet.cpp rename to inference/testBinaryBayesNet.cpp diff --git a/cpp/testErrors.cpp b/inference/testErrors.cpp similarity index 100% rename from cpp/testErrors.cpp rename to inference/testErrors.cpp diff --git a/cpp/testGaussianConditional.cpp b/inference/testGaussianConditional.cpp similarity index 100% rename from cpp/testGaussianConditional.cpp rename to inference/testGaussianConditional.cpp diff --git a/cpp/testGaussianFactor.cpp b/inference/testGaussianFactor.cpp similarity index 100% rename from cpp/testGaussianFactor.cpp rename to inference/testGaussianFactor.cpp diff --git a/cpp/testISAM.cpp b/inference/testISAM.cpp similarity index 100% rename from cpp/testISAM.cpp rename to inference/testISAM.cpp diff --git a/cpp/testJunctionTree.cpp b/inference/testJunctionTree.cpp similarity index 100% rename from cpp/testJunctionTree.cpp rename to inference/testJunctionTree.cpp diff --git a/cpp/testKey.cpp b/inference/testKey.cpp similarity index 100% rename from cpp/testKey.cpp rename to inference/testKey.cpp diff --git a/cpp/testNoiseModel.cpp b/inference/testNoiseModel.cpp similarity index 100% rename from cpp/testNoiseModel.cpp rename to inference/testNoiseModel.cpp diff --git a/cpp/testOrdering.cpp b/inference/testOrdering.cpp similarity index 100% rename from cpp/testOrdering.cpp rename to inference/testOrdering.cpp diff --git a/cpp/testSymbolicBayesNet.cpp b/inference/testSymbolicBayesNet.cpp similarity index 100% rename from cpp/testSymbolicBayesNet.cpp rename to inference/testSymbolicBayesNet.cpp diff --git a/cpp/testSymbolicFactor.cpp b/inference/testSymbolicFactor.cpp similarity index 100% rename from cpp/testSymbolicFactor.cpp rename to inference/testSymbolicFactor.cpp diff --git a/cpp/testSymbolicFactorGraph.cpp b/inference/testSymbolicFactorGraph.cpp similarity index 100% rename from cpp/testSymbolicFactorGraph.cpp rename to inference/testSymbolicFactorGraph.cpp diff --git a/cpp/testVectorBTree.cpp b/inference/testVectorBTree.cpp similarity index 100% rename from cpp/testVectorBTree.cpp rename to inference/testVectorBTree.cpp diff --git a/cpp/testVectorMap.cpp b/inference/testVectorMap.cpp similarity index 100% rename from cpp/testVectorMap.cpp rename to inference/testVectorMap.cpp diff --git a/cpp/timeGaussianFactor.cpp b/inference/timeGaussianFactor.cpp similarity index 100% rename from cpp/timeGaussianFactor.cpp rename to inference/timeGaussianFactor.cpp diff --git a/cpp/timeSymbolMaps.cpp b/inference/timeSymbolMaps.cpp similarity index 100% rename from cpp/timeSymbolMaps.cpp rename to inference/timeSymbolMaps.cpp diff --git a/cpp/timeVectorConfig.cpp b/inference/timeVectorConfig.cpp similarity index 100% rename from cpp/timeVectorConfig.cpp rename to inference/timeVectorConfig.cpp