started working on UI part, adding some useful utils and extensions