removing bad code
Abstract API
extract methods to abstract API
extract blacklist methods to abstract API
extract customElements methods to abstract API