Increased element caching & added option to keep empty option tag.