Update

Lots of exnhanced functionality