some improvements. aka: i'm slightly drunk and don't remember all the changes.