refactoring and cleaning
load builtin assets using Promises(q) + cleanup
add gradient technique