     
     - returns: The next element of the queue, if it exists.
     */
-    public func front() -> T? {
+    public func front() -> Element? {
         if empty { return nil }
         
         return items[0]

    
    - returns: The first element of the queue, if it exists.
    */
    public mutating func pop() -> T? {
        if empty { return nil }
        
        return items.removeAtIndex(0)

    
    - returns: Array representation of the queue.
    */
    public func queueAsArray() -> [Element] {
        return items
    }
    
    public func generate() -> MCTQueueGenerator<Element> {
        return MCTQueueGenerator<Element>(items: items[0 ..< items.count])
    }
    
}
