Preheat oven to 350 degrees F.
Cut parchment paper in a circle to fit on the bottoms of two 8" round cake pans. Spray the parchment paper with non-stick cooking spray.
Make cake: in a large mixing bowl, combine all of the wet ingredients together using an electric mixer. Slowly add the dry ingredients and continue mixing until everything is well-combined.
Pour the cake batter evenly among the two round pans and bake for 30-35 minutes, or until tops are set and a toothpick inserted into the center comes out clean. Rotate the cakes halfway through baking.
Remove the cakes from the oven and allow to cool for about 30 minutes in their pans.
After, flip the pans upside down onto a cooling rack to remove cakes from the pans. Peel the parchment papers off of the cakes. Allow to cool on the cooling racks until completely cooled, about 30-40 minutes.
Once cakes are cooled, make the frosting: in a large mixing bowl, combine the softened cream cheese and softened butter with an electric mixer. Beat until smooth and creamy. Add the canned pumpkin (or cocoa powder/peanut butter if making a variation), vanilla, and powdered sugar, and continue mixing. Add more powdered sugar or milk until desired texture is reached.
Place one of the cakes upside down onto a serving dish. Spread about 1/3 of the frosting evenly over top. Top with the remaining cake.
Spread the remaining icing on top of the cake and around the sides, smoothing out as best as you can.
If making the chocolate coating: place chocolate chips and coconut oil/butter in a small microwavable bowl and microwave in 20-second increments (stirring after each one) until melted and smooth. Stir in the vanilla, and then drizzle (or spread) the melted chocolate over top of the cake.