     
         :returns: The newly created date representing the first second of the year
     */
-    private func beginningOfYear(date:NSDate) -> NSDate {
+    public func beginningOfYear(date:NSDate) -> NSDate {
         let components = self.calendar.components(.CalendarUnitYear, fromDate: date)
         
         return self.calendar.dateFromComponents(components)!

    
        :returns: The newly created date representing the first second of the month
    */
    private func beginningOfMonth(date:NSDate) -> NSDate {
        let components = self.calendar.components((.CalendarUnitYear | .CalendarUnitMonth), fromDate: date)
        
        return self.calendar.dateFromComponents(components)!

    
        :returns: The newly created date representing the first second of the hour
    */
    public func beginningOfHour(date:NSDate) -> NSDate {
        let components = self.calendar.components(
            (.CalendarUnitYear | .CalendarUnitMonth | .CalendarUnitDay | .CalendarUnitHour), fromDate: date
        )
