implemented the preset system and also fixed some small bugs