some focus layer improvements, and rezn8d's overthrow.js merge