cleanup code, add shadow, remove unnecessary variables, fix Jshint errors,
move layout into a function
query features error
no message