Revert "Revert "first changes for enchanting (not finished)""

This reverts commit f0957922b1fc926ada3d7c230adf8f2948c5c007.