Added encoders and added basic functionality so the idea works.