Big commit and big fixes