Feature/text entry lang

@swarajban, @jagill, check it out when you have a chance
Why should we avoid truthy/falsy?   It's pretty standard in the JS community, and otherwise we have a bunch of cases we need to check (null, undefined, 0).  It's not necessarily clearer to enumerate all those possibilities, and it's often more error-prone.