Let us know if something is unclear so we can explain it with more details.
Long lecture so be prepared

Cheatcodes:
- merged 'from_dev=' 'from_dir=' and 'from_iso' into one 'from=' cheatcode. See cheatcodes.txt for more on the 'from=' cheatcode as its behavior has changed from Porteus 1.2
- merged 'toroot' and 'noautologin' cheatcodes into one 'login=user_name' cheatcode. When no username is specified (or is spelled incorrectly) then booting stops at the kdm/lxdm/gdm login screen. Examples: 'login=root' 'login='
- extended 'changes=' cheatcode with 'changes=EXIT:' extenstion which tells linuxrc to save changes only once during shutdown and not in real-time.
- extended 'vga_detect' cheatcode with support for "amd-catalyst-legacy" drivers (HD2000-HD4000 series)
- added support for multiple folders to the 'extramod=' cheatcode. Example: 'extramod=folder1;folder2' (thanks to Thor for the suggestion).
- added the 'rammod=' cheatcode which lets users specify which modules should be loaded to RAM, for example: 'rammod=002;003' will copy only the xorg and lxde modules to RAM while the rest of the modules will be accessed from your booting media as normal. This may be useful for older PC's/netbooks with less RAM (thanks to Thor for suggestion).
- added 'zram=some_value%' cheatcode which converts the specified percentage of RAM into a compressed swap device, reducing I/O from the hard drive
- dropped 'iocharset=' and 'lang=' cheatcodes as they are obsolete. Please use Porteus-Settings-Centre to set your language/encoding in the system
- dropped 'passwd' cheatcode as we also have PSC for this task
wider comment on 'changes=EXIT:'
directories which are saved with the 'changes=EXIT:' cheatcode are tweakeable in /etc/changes_exit.conf. Users can for example remove everything and leave just /etc and /home or /var or /home/fanthom. The following directories are omitted by default: /boot /dev /media /mnt /proc /run /srv /sys /tmp.
'changes=EXIT:' has some important advantages:
- Porteus works as fast as it does in 'Always Fresh' mode as RAM serves as a buffer and data is dumped onto the user's drive only once during shutdown.
- reduced number of I/O should extend the life of usb sticks/SSD drives
- 'changes=EXIT:' still preserves complete 'persistence' functionality.
Here are the disadvantages:
- session is lost in the case of a hang (kernel crash) or power interrupt
- root's partition (/) size is limited to 60% of RAM (tweakeable with ramsize=some_value% cheatcode).
other linuxrc/initrd changes:
- switched to initramfs which still behaves like initrd (thanks to Tomas M from slax.org for reminding us about this possibility)
- added a separate initramfs that contains network drivers for PXE booting. Porteus-2.0 should support all wired devices out of the box.
- tweaked 'changes=' function to mount the aufs writable branch to /memory/changes instead of /memory. This way /images /xino /copy2ram folders will never be created in the'changes=destination' file/folder as they are not necessary there.
- all devices are mounted at the very beginning of linuxrc and moved to /union with 'mount --move' command. This way booting is faster as devices don't have to be mounted/unmounted twice: first time by linuxrc and second time by rc.S
- the /lib/modules folder from 000-kernel.xzm is bound to /lib/modules inside initrd once linuxrc finds the .sgn file. This way we have early access to all drivers so it's possible to place changes/additional_xzm's/rootcopy on filesystems not compiled directly into the kernel. For example it will be possible to boot from FAT (or ntfs, ext*, reiserfs, xfs) with changes saved on btrfs, nilfs2 or any other filesystem compiled as a kernel module.
- when the 'copy2ram' cheatcode is used, removable media will be still mounted in /mnt/sdXY if changes are saved on them
- the copy2ram function copies modules one by one and not all together. If there is not enough memory to load all modules then the rest are skipped so booting can continue.
- added 'asyncs' to default mounting options to extend usb stick/SSD drive lifetime.
- added 'utf8' mounting flag for FAT to get rid of the iocharset kernel warning
- vga_detect function updated to reflect the new name for ati drivers which from now on will be named as 'amd-catalyst' (supporting latest AMD GPU cards) and 'amd-catalyst-legacy' (supporting only HD2000-HD4000 series)
- at the end of the linuxrc phase all unneeded libraries, utilities and drivers (in case of PXE boot) are deleted from initrd to free up the memory
- tweaked cleanup script for ultra-fast and safe shutdown
wider comment on optimized shutdown time:
Porteus shutdown procedure has 3 scenarios:
a) "changes are not saved anywhere" in this scenario we do not care about anything. All processes get killed without a delay so shutdown is almost immediate.
b) "changes are saved on a device/file with changes= cheatcode" - in this scenario there is 2 sec delay before killing processes to let them terminate cleanly.
c) "changes are saved 'on exit'" - there is 3 sec delay during which the user can:
- press enter or space to start saving data from RAM to a drive immediately
- press any other key to skip saving changes. This is useful when something went wrong and user does not want to save this particular session
- do nothing and changes will be saved automatically after 3 sec delay
kernel config changes:
- added bonding support (stalane request)
- brought back multicast support (svqb request)
/boot and /porteus folder changes:
- moved all files and folders except for /docs and installers to /boot/syslinux folder to make /boot less cluttered
- replaced 'lin_start_here.sh' with new 'Porteus-installer-for-Linux.com' tool which automatically detects the filesystem type and uses extlinux for FAT/NTFS/EXT*/BTRFS filesystems and LILO for the rest. The installer also detects if the user is installing Porteus inside a subfolder and updates the 'from=' cheatcode automatically in the bootloader config. Please run the installer with the arguement '-- -s' to leave bootloader configs untouched.
- replaced 'with_start_here.hta' with new 'Porteus-installer-for-Windows.exe'
- upgraded to syslinux-4.06 which adds ntfs support
- removed 'Safe Vesa' mode from porteus.cfg and lilo.conf as it's not needed anymore.
- removed 'autoexec=telinit~3' from bootloader configs as Porteus-2.0 supports native runlevel switching built into /sbin/init. Providing runlevel number is enough to switch to it during boot. Examples: '1' for single user mode, '3' for text mode, '4' for GUI (default in Porteus) and '6' for reboot
- dropped vga=791 parameter form bootloader configs as the VESA framebuffer was causing booting problems on some PC's (Rava bug report)
- removed /porteus/tools and the /porteus/make_iso.bat script
- added "-l" flag to the /porteus/make_iso.sh script to allow up to 31 characters in the file names (thanks to sams)
rc.* script changes:
- tweaked rc.6 to take advantage of paralell deactivation, giving much faster shutdown in cases where many modules were activated during the live session
- added RAID support to rc.S and rc.6. These scripts will also search for LVM volumes on RAID devices.
- added "watch-xorg" script to rc.4 which loads xorg vesa config in case of Xorg failures. When the 'drm_kms_helper' driver is loaded then the modesetting driver is used instead of vesa.
- added non-executable /etc/rc.d/rc.inet1 to 002-xorg because when this module is present then Network Manager takes over the job.
porteus scripts changes:
- improved the pxe-boot script to rely on the /mnt/live/porteus symlink rather than /boot
- changes-time script wont copy empty directories to the final destination otherwise some unneeded files may also be copied
- fixed ungzipping of man archives placed in /usr/local directory in the txz2xzm script (thanks to sams)
- added a function to the dir2xzm script that ungzips man archives placed in /usr/local
userland changes:
- KDEVARTMP variable is set to /mnt/live/var/tmp instead of /var/tmp. This way, the big kde-cache files are always kept on tmpfs (in RAM), so KDE4 should be more responsive when the 'changes=' cheatcode is used.
- removed support for OSS (Open Sound System) as it has been deprecated in the kernel and userland for a long time
- almost all firmware is now merged into the 'extra-firmware' package
- added openvpn and pptp plugins to Network Manager
- omni.ja archive is re-compressed with 0 compression ratio resulting in smaller module (thanks to Tomas M for this tip)
- ungzipped svgz icons to save some space in the ISO (once again - thanks to Tomas M)
- added ifenslave utility (along with bonding support in kernel config)
- fixed deactivation of modules in text mode (thanks to Ahau)
- fixed lxpanel transparency issue. No more lxterminal popping up after login to LXDE session
- tweaked 'watch-proprietary' script which now removes /etc/X11/xorg.conf which may still be present after unloading nVidia/fglrx drivers (thanks to oranus for bug report)
- merged xterm tweaks to /etc/X11/xinit/.Xresources (thanks to bigbass)
- removed a setting for kbd delay under KDE4 for much faster response time
- enabled recursive activation/deactivation of folders containing xzm's (Hamza's request). Use '-o' flag to limit searches to one level only. Example: 'activate -o /folder/with_modules'
- disabled some apps which have equivalents in other desktops. example: lxtask wont be shown in KDE4 and ksysquard in LXDE
- tweaked wifi settings of pns-tool (cli version) as per Kiosk Edition defaults to make it more robust
- Laptop-Mode-Tools are enabled by default and controls all power related settings in Porteus
- removed support for wicd from boot scripts and 'nonetwork' cheatcode
- updated ksplash, kdm theme and sound theme
- added networkmanagement to KDE4 as nm-applet was not displayed properly in the systray (bug: https://bugzilla.redhat.com/show_bug.cgi?id=716358)
- added logrotate utility to prevent logs from growing too large
more to come....