The GPS permission is used for location-based advertising. It is not present in the paid Premium version of the app since it doesn't have ads. The phone state permission is used as a unique device identifier to allow us to track unique installs from Play since for the free version we can't determine a new install from a reinstall without this. The Premium app doesn't have this, either, since we have a definitive unique install number from purchases.
This start at boot permission is required to automatically launch the notification service in BaconReader.
We don't launch the entire app at the boot time, but only a small piece of code (BootReceiver) that checks the app's settings and if notifications are enabled by the user user (notifyOnMessage or notifyOnOtherReply) we set up system timer (AlarmManager) to periodically run our service for getting new data from the Internet and displaying notifications to users if needed.