Views, Grouping by various levels of granularity in a date field?
Well I think I got it. 

Step 1: Add two new date formats

I set up two new date formats: Month only and Year only





Step 2: Query the date date field twice under the new formats

Add the Publication Date field twice in these newly created formats





Step 3: Apply the proper grouping to the view

Here's how I grouped it....




And finally, the results

Below, albeit poorly formatted, I have two two years of 2015 and 2014 with sub divided months. 

(For some reason, what ever the last grouped field is encapulated in . I tried playing with the formatting but no luck. However, I've worked out my logic here.)