functions now chainable, added some defaul visuals
updated version