Big update

A lot of changes