added const_set instead of eval and made some stuff more readable, closes #36