diff --git a/CMakeLists.txt b/CMakeLists.txt
index a946361730a494d81422912e56907864f790deed..75ead290fe376886aae965111648743b72eb54ee 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -364,7 +364,6 @@ SET(HDRS_DTASSC
   include/base/association/association_solver.h
   include/base/association/association_tree.h
   include/base/association/matrix.h
-  include/base/track_matrix.h
   )
 
 
@@ -400,14 +399,11 @@ SET(SRCS_MATH
 SET(SRCS_UTILS
   )
 
-SET(SRCS
-  )
 SET(SRCS_CAPTURE
   src/capture/capture_motion.cpp
   src/capture/capture_base.cpp
   src/capture/capture_pose.cpp
   src/capture/capture_void.cpp
-  src/capture/capture_GPS_fix.cpp
   src/capture/capture_IMU.cpp
   src/capture/capture_odom_2D.cpp
   src/capture/capture_odom_3D.cpp
@@ -422,11 +418,14 @@ SET(SRCS_FEATURE
   src/feature/feature_corner_2D.cpp
   src/feature/feature_diff_drive.cpp
   src/feature/feature_odom_2D.cpp
+  src/feature/feature_base.cpp
+  src/feature/feature_pose.cpp
   )
 SET(SRCS_LANDMARK
   src/landmark/landmark_container.cpp
   src/landmark/landmark_corner_2D.cpp
   src/landmark/landmark_line_2D.cpp
+  src/landmark/landmark_base.cpp
   )
 SET(SRCS_PROCESSOR
   src/processor/motion_buffer.cpp
@@ -460,6 +459,8 @@ SET(SRCS_DTASSC
 SET(SRCS_SOLVER
   src/solver/solver_manager.cpp
   )
+SET(SRCS_YAML
+  )
 #OPTIONALS
 #optional HDRS and SRCS
 IF (Ceres_FOUND)
@@ -496,15 +497,11 @@ ENDIF(Suitesparse_FOUND)
 # LEAVE YAML FILES ALWAYS IN THE LAST POSITION !!
 IF(YAMLCPP_FOUND)
   # headers
-  SET(HDRS ${HDRS}
-    include/base/yaml/yaml_conversion.h
-    )
   SET(HDRS_YAML ${HDRS_YAML}
     include/base/yaml/yaml_conversion.h
     )
-
   # sources
-  SET(SRCS ${SRCS}
+  SET(SRCS_YAML ${SRCS_YAML}
     src/yaml/processor_odom_3D_yaml.cpp
     src/yaml/sensor_odom_3D_yaml.cpp
     )
@@ -532,7 +529,7 @@ ADD_LIBRARY(${PROJECT_NAME}
   ${SRCS_TRAJECTORY}
   ${SRCS_UTILS}
   ${SRCS_WRAPPER}
-  ${SRCS}
+  ${SRCS_YAML}
   )
 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${CMAKE_THREAD_LIBS_INIT})
 
diff --git a/src/capture/capture_GPS_fix.cpp b/src/capture/capture_GPS_fix.cpp
deleted file mode 100644
index ccf9b8631bd0759448ec6c20da7b00b9f534087d..0000000000000000000000000000000000000000
--- a/src/capture/capture_GPS_fix.cpp
+++ /dev/null
@@ -1,34 +0,0 @@
-#include "base/capture/capture_GPS_fix.h"
-
-namespace wolf {
-
-CaptureGPSFix::CaptureGPSFix(const TimeStamp& _ts, SensorBasePtr _sensor_ptr, const Eigen::VectorXs& _data) :
-	CaptureBase("GPS FIX", _ts, _sensor_ptr),
-	data_(_data)
-{
-    //
-}
-
-CaptureGPSFix::CaptureGPSFix(const TimeStamp& _ts, SensorBasePtr _sensor_ptr, const Eigen::VectorXs& _data, const Eigen::MatrixXs& _data_covariance) :
-	CaptureBase("GPS FIX", _ts, _sensor_ptr),
-	data_(_data),
-	data_covariance_(_data_covariance)
-{
-    //
-}
-
-CaptureGPSFix::~CaptureGPSFix()
-{
-	//std::cout << "Destroying GPS fix capture...\n";
-}
-
-void CaptureGPSFix::process()
-{
-	// EXTRACT AND ADD FEATURES
-    addFeature(std::make_shared<FeatureGPSFix>(data_,data_covariance_));
-
-    // ADD CONSTRAINT
-    getFeatureList().front()->addFactor(std::make_shared <FactorGPS2D>(getFeatureList().front()));
-}
-
-} //namespace wolf