Revert "Revert "Basic elements in 4 classes""

This reverts commit d65efc6b6f3e2e543f72922365ad96e24483508a.