Strategies for empty value treatment

This PR brings the same functionality as #48 but in more cleaner and readable form.