Major update to our code

Check log to see changes