Cleaned up and improved AButton