Forward porting updates to dev branch

After adding some functionality, it's time to go back into dev.