diff --git a/doc/Gemfile.html b/doc/Gemfile.html
new file mode 100644
index 0000000000000000000000000000000000000000..a9b5bd98a5fb8101a55d99b76597960ebb93bd52
--- /dev/null
+++ b/doc/Gemfile.html
@@ -0,0 +1,96 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
+
+<title>Gemfile - RDoc Documentation</title>
+
+<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
+
+<script type="text/javascript">
+  var rdoc_rel_prefix = "./";
+</script>
+
+<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
+<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
+<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
+<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
+<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
+<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
+
+
+<body class="file">
+<nav id="metadata">
+  <nav id="home-section" class="section">
+  <h3 class="section-header">
+    <a href="./index.html">Home</a>
+    <a href="./table_of_contents.html#classes">Classes</a>
+    <a href="./table_of_contents.html#methods">Methods</a>
+  </h3>
+</nav>
+
+
+  <nav id="search-section" class="section project-section" class="initially-hidden">
+  <form action="#" method="get" accept-charset="utf-8">
+    <h3 class="section-header">
+      <input type="text" name="search" placeholder="Search" id="search-field"
+             title="Type to search, Up and Down to navigate, Enter to load">
+    </h3>
+  </form>
+
+  <ul id="search-results" class="initially-hidden"></ul>
+</nav>
+
+
+  <div id="project-metadata">
+    <nav id="fileindex-section" class="section project-section">
+  <h3 class="section-header">Pages</h3>
+
+  <ul>
+  
+    <li class="file"><a href="./Gemfile.html">Gemfile</a>
+  
+  </ul>
+</nav>
+
+    <nav id="classindex-section" class="section project-section">
+  <h3 class="section-header">Class and Module Index</h3>
+
+  <ul class="link-list">
+  
+    <li><a href="./Options.html">Options</a>
+  
+    <li><a href="./PlayBot.html">PlayBot</a>
+  
+    <li><a href="./SitePlugin.html">SitePlugin</a>
+  
+    <li><a href="./SoundcloudPlugin.html">SoundcloudPlugin</a>
+  
+    <li><a href="./TestPlugin1.html">TestPlugin1</a>
+  
+    <li><a href="./TestPlugin2.html">TestPlugin2</a>
+  
+    <li><a href="./YoutubePlugin.html">YoutubePlugin</a>
+  
+  </ul>
+</nav>
+
+  </div>
+</nav>
+
+<div id="documentation" class="description">
+  
+<p>source “<a href="http://rubygems.org">rubygems.org</a>” gem “net-yail” gem
+“rspec” gem “youtube_it” gem “soundcloud”</p>
+
+</div>
+
+
+
+<footer id="validator-badges">
+  <p><a href="http://validator.w3.org/check/referer">[Validate]</a>
+  <p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
+  <p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
+</footer>
+
diff --git a/doc/Options.html b/doc/Options.html
new file mode 100644
index 0000000000000000000000000000000000000000..4f861d6759c56f2e20f86a30dad388fbd9900400
--- /dev/null
+++ b/doc/Options.html
@@ -0,0 +1,293 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
+
+<title>class Options - RDoc Documentation</title>
+
+<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
+
+<script type="text/javascript">
+  var rdoc_rel_prefix = "./";
+</script>
+
+<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
+<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
+<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
+<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
+<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
+<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
+
+
+<body id="top" class="class">
+<nav id="metadata">
+  <nav id="home-section" class="section">
+  <h3 class="section-header">
+    <a href="./index.html">Home</a>
+    <a href="./table_of_contents.html#classes">Classes</a>
+    <a href="./table_of_contents.html#methods">Methods</a>
+  </h3>
+</nav>
+
+
+  <nav id="search-section" class="section project-section" class="initially-hidden">
+  <form action="#" method="get" accept-charset="utf-8">
+    <h3 class="section-header">
+      <input type="text" name="search" placeholder="Search" id="search-field"
+             title="Type to search, Up and Down to navigate, Enter to load">
+    </h3>
+  </form>
+
+  <ul id="search-results" class="initially-hidden"></ul>
+</nav>
+
+
+  <div id="file-metadata">
+    <nav id="file-list-section" class="section">
+  <h3 class="section-header">Defined In</h3>
+  <ul>
+    <li>lib/options.rb
+  </ul>
+</nav>
+
+    
+  </div>
+
+  <div id="class-metadata">
+    
+    <nav id="parent-class-section" class="section">
+  <h3 class="section-header">Parent</h3>
+  
+  <p class="link">Object
+  
+</nav>
+
+    
+    <!-- Method Quickref -->
+<nav id="method-list-section" class="section">
+  <h3 class="section-header">Methods</h3>
+
+  <ul class="link-list">
+    
+    <li><a href="#method-c-new">::new</a>
+    
+    <li><a href="#method-i-read_all">#read_all</a>
+    
+    <li><a href="#method-i-read_file">#read_file</a>
+    
+  </ul>
+</nav>
+
+  </div>
+
+  <div id="project-metadata">
+    <nav id="fileindex-section" class="section project-section">
+  <h3 class="section-header">Pages</h3>
+
+  <ul>
+  
+    <li class="file"><a href="./Gemfile.html">Gemfile</a>
+  
+  </ul>
+</nav>
+
+    <nav id="classindex-section" class="section project-section">
+  <h3 class="section-header">Class and Module Index</h3>
+
+  <ul class="link-list">
+  
+    <li><a href="./Options.html">Options</a>
+  
+    <li><a href="./PlayBot.html">PlayBot</a>
+  
+    <li><a href="./SitePlugin.html">SitePlugin</a>
+  
+    <li><a href="./SoundcloudPlugin.html">SoundcloudPlugin</a>
+  
+    <li><a href="./TestPlugin1.html">TestPlugin1</a>
+  
+    <li><a href="./TestPlugin2.html">TestPlugin2</a>
+  
+    <li><a href="./YoutubePlugin.html">YoutubePlugin</a>
+  
+  </ul>
+</nav>
+
+  </div>
+</nav>
+
+<div id="documentation">
+  <h1 class="class">class Options</h1>
+
+  <div id="description" class="description">
+    
+<p>Allow us to get options, set by user or default ones.</p>
+
+  </div><!-- description -->
+
+  
+  
+  
+  <section id="5Buntitled-5D" class="documentation-section">
+    
+
+    
+
+    
+
+    
+
+    <!-- Methods -->
+    
+     <section id="public-class-5Buntitled-5D-method-details" class="method-section section">
+      <h3 class="section-header">Public Class Methods</h3>
+
+    
+      <div id="method-c-new" class="method-detail ">
+        
+        <div class="method-heading">
+          <span class="method-name">new</span><span
+            class="method-args">(file = "</span>
+          <span class="method-click-advice">click to toggle source</span>
+        </div>
+        
+
+        <div class="method-description">
+          
+          
+          
+
+          
+          <div class="method-source-code" id="new-source">
+            <pre><span class="ruby-comment"># File lib/options.rb, line 6</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">file</span> = <span class="ruby-node">&quot;#{ENV['HOME']}/.playbot&quot;</span>)
+    <span class="ruby-ivar">@options</span> = {}
+    <span class="ruby-ivar">@file</span> = <span class="ruby-identifier">file</span>
+<span class="ruby-keyword">end</span></pre>
+          </div><!-- new-source -->
+          
+        </div>
+
+        
+
+        
+      </div><!-- new-method -->
+
+    
+    </section><!-- public-class-method-details -->
+  
+     <section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
+      <h3 class="section-header">Public Instance Methods</h3>
+
+    
+      <div id="method-i-read_all" class="method-detail ">
+        
+        <div class="method-heading">
+          <span class="method-name">read_all</span><span
+            class="method-args">()</span>
+          <span class="method-click-advice">click to toggle source</span>
+        </div>
+        
+
+        <div class="method-description">
+          
+          <p>Read the options from commande line and configuration file. Command line
+overwrite configuration file.</p>
+          
+
+          
+          <div class="method-source-code" id="read_all-source">
+            <pre><span class="ruby-comment"># File lib/options.rb, line 12</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">read_all</span>
+    <span class="ruby-comment"># Firt we read options from command line.</span>
+    <span class="ruby-constant">OptionParser</span>.<span class="ruby-identifier">new</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">opts</span><span class="ruby-operator">|</span>
+        <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">banner</span> = <span class="ruby-string">&quot;Usage: ./run.rb [OPTIONS]&quot;</span>
+
+        <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'-h'</span>, <span class="ruby-string">'--help'</span>, <span class="ruby-string">'show this help'</span>) <span class="ruby-keyword">do</span>
+            <span class="ruby-identifier">puts</span> <span class="ruby-identifier">opts</span>
+            <span class="ruby-identifier">exit</span>
+        <span class="ruby-keyword">end</span>
+
+        <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'-s'</span>, <span class="ruby-string">'--silent'</span>, <span class="ruby-string">'set log to FATAL'</span>) <span class="ruby-keyword">do</span>
+            <span class="ruby-ivar">@options</span>[<span class="ruby-value">:silent</span>] = <span class="ruby-keyword">true</span>
+        <span class="ruby-keyword">end</span>
+
+        <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'-a'</span>, <span class="ruby-string">'--admin'</span>, <span class="ruby-string">'admin nick'</span>) <span class="ruby-keyword">do</span>
+            <span class="ruby-ivar">@options</span>[<span class="ruby-value">:admin</span>] = <span class="ruby-identifier">arg</span>
+        <span class="ruby-keyword">end</span>
+
+        <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'-n'</span>, <span class="ruby-string">'--network'</span>, <span class="ruby-string">'server address'</span>) <span class="ruby-keyword">do</span>
+            <span class="ruby-ivar">@options</span>[<span class="ruby-value">:address</span>] = <span class="ruby-identifier">arg</span>
+        <span class="ruby-keyword">end</span>
+
+        <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'-p'</span>, <span class="ruby-string">'--port'</span>, <span class="ruby-string">'server port'</span>) <span class="ruby-keyword">do</span>
+            <span class="ruby-ivar">@options</span>[<span class="ruby-value">:port</span>] = <span class="ruby-identifier">arg</span>
+        <span class="ruby-keyword">end</span>
+    <span class="ruby-keyword">end</span>.<span class="ruby-identifier">parse!</span>
+    
+    <span class="ruby-comment"># Next we look to a configuration file.</span>
+    <span class="ruby-identifier">read_file</span>
+<span class="ruby-keyword">end</span></pre>
+          </div><!-- read_all-source -->
+          
+        </div>
+
+        
+
+        
+      </div><!-- read_all-method -->
+
+    
+      <div id="method-i-read_file" class="method-detail ">
+        
+        <div class="method-heading">
+          <span class="method-name">read_file</span><span
+            class="method-args">()</span>
+          <span class="method-click-advice">click to toggle source</span>
+        </div>
+        
+
+        <div class="method-description">
+          
+          <p>Read the options from the configuration file.</p>
+          
+
+          
+          <div class="method-source-code" id="read_file-source">
+            <pre><span class="ruby-comment"># File lib/options.rb, line 44</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">read_file</span>
+    <span class="ruby-keyword">if</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">exists?</span>(<span class="ruby-ivar">@file</span>)
+        <span class="ruby-constant">YAML</span>.<span class="ruby-identifier">load_file</span>(<span class="ruby-ivar">@file</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">k</span>, <span class="ruby-identifier">v</span><span class="ruby-operator">|</span>
+            <span class="ruby-ivar">@options</span>[<span class="ruby-identifier">k</span>.<span class="ruby-identifier">to_sym</span>] = <span class="ruby-identifier">v</span> <span class="ruby-keyword">unless</span> <span class="ruby-ivar">@options</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">k</span>)
+        <span class="ruby-keyword">end</span>
+    <span class="ruby-keyword">end</span>
+
+    <span class="ruby-ivar">@options</span>[<span class="ruby-value">:silent</span>] <span class="ruby-operator">||=</span> <span class="ruby-keyword">false</span>
+    <span class="ruby-ivar">@options</span>[<span class="ruby-value">:nicknames</span>] <span class="ruby-operator">||=</span> [<span class="ruby-string">'PlayBot'</span>, <span class="ruby-string">'Play_Bot'</span>, <span class="ruby-string">'Play__Bot'</span>, <span class="ruby-string">'Play___Bot'</span>]
+    <span class="ruby-ivar">@options</span>[<span class="ruby-value">:channels</span>] <span class="ruby-operator">||=</span> [<span class="ruby-string">'#hormone'</span>]
+    <span class="ruby-ivar">@options</span>
+<span class="ruby-keyword">end</span></pre>
+          </div><!-- read_file-source -->
+          
+        </div>
+
+        
+
+        
+      </div><!-- read_file-method -->
+
+    
+    </section><!-- public-instance-method-details -->
+  
+  </section><!-- 5Buntitled-5D -->
+
+</div><!-- documentation -->
+
+
+<footer id="validator-badges">
+  <p><a href="http://validator.w3.org/check/referer">[Validate]</a>
+  <p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
+  <p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
+</footer>
+
diff --git a/PlayBot.html b/doc/PlayBot.html
similarity index 93%
rename from PlayBot.html
rename to doc/PlayBot.html
index dbae35efe5cbcee981eafe846f705bee892f0912..b1315adceb4a5335be356e8a11043e70eb58cc5d 100644
--- a/PlayBot.html
+++ b/doc/PlayBot.html
@@ -80,22 +80,35 @@
   </div>
 
   <div id="project-metadata">
-    
+    <nav id="fileindex-section" class="section project-section">
+  <h3 class="section-header">Pages</h3>
+
+  <ul>
+  
+    <li class="file"><a href="./Gemfile.html">Gemfile</a>
+  
+  </ul>
+</nav>
+
     <nav id="classindex-section" class="section project-section">
   <h3 class="section-header">Class and Module Index</h3>
 
   <ul class="link-list">
   
+    <li><a href="./Options.html">Options</a>
+  
     <li><a href="./PlayBot.html">PlayBot</a>
   
     <li><a href="./SitePlugin.html">SitePlugin</a>
   
-    <li><a href="./TestPlugin.html">TestPlugin</a>
+    <li><a href="./SoundcloudPlugin.html">SoundcloudPlugin</a>
   
     <li><a href="./TestPlugin1.html">TestPlugin1</a>
   
     <li><a href="./TestPlugin2.html">TestPlugin2</a>
   
+    <li><a href="./YoutubePlugin.html">YoutubePlugin</a>
+  
   </ul>
 </nav>
 
@@ -173,7 +186,7 @@
 
           
           <div class="method-source-code" id="new-source">
-            <pre><span class="ruby-comment"># File lib/playbot.rb, line 26</span>
+            <pre><span class="ruby-comment"># File lib/playbot.rb, line 33</span>
 <span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">options</span> = {})
         <span class="ruby-ivar">@admin</span> = <span class="ruby-identifier">options</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-value">:admin</span>)
         <span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;You must provide an admin !&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-operator">!</span><span class="ruby-ivar">@admin</span>
@@ -183,7 +196,7 @@
                 <span class="ruby-ivar">@nick_paswd</span> = <span class="ruby-identifier">options</span>.<span class="ruby-identifier">delete</span>[<span class="ruby-value">:nick_passwd</span>]
         <span class="ruby-keyword">end</span>
 
-        <span class="ruby-identifier">options</span>[<span class="ruby-value">:username</span>] = <span class="ruby-constant">BOTNAME</span>
+<span class="ruby-identifier">options</span>[<span class="ruby-value">:username</span>] = <span class="ruby-constant">BOTNAME</span>
         <span class="ruby-identifier">options</span>[<span class="ruby-value">:realname</span>] = <span class="ruby-constant">BOTNAME</span>
 
 <span class="ruby-keyword">super</span>(<span class="ruby-identifier">options</span>)
@@ -222,7 +235,7 @@
 
           
           <div class="method-source-code" id="add_custom_handlers-source">
-            <pre><span class="ruby-comment"># File lib/playbot.rb, line 44</span>
+            <pre><span class="ruby-comment"># File lib/playbot.rb, line 51</span>
 <span class="ruby-keyword">def</span> <span class="ruby-identifier">add_custom_handlers</span>()
         <span class="ruby-ivar">@irc</span>.<span class="ruby-identifier">hearing_welcome</span>   <span class="ruby-keyword">self</span>.<span class="ruby-identifier">method</span>(<span class="ruby-value">:_in_welcome</span>)
         <span class="ruby-ivar">@irc</span>.<span class="ruby-identifier">on_msg</span>       <span class="ruby-keyword">self</span>.<span class="ruby-identifier">method</span>(<span class="ruby-value">:_in_msg</span>)
diff --git a/SitePlugin.html b/doc/SitePlugin.html
similarity index 80%
rename from SitePlugin.html
rename to doc/SitePlugin.html
index 997ceb43eec4b0fa65da4fc4bf94add0b1b80e2e..8e41fd9426cbf88af8c9962f50a85a861b84eb39 100644
--- a/SitePlugin.html
+++ b/doc/SitePlugin.html
@@ -76,7 +76,7 @@
     
     <li><a href="#method-c-repository">::repository</a>
     
-    <li><a href="#method-i-can_handle-3F">#can_handle?</a>
+    <li><a href="#method-i-method_missing">#method_missing</a>
     
   </ul>
 </nav>
@@ -84,22 +84,35 @@
   </div>
 
   <div id="project-metadata">
-    
+    <nav id="fileindex-section" class="section project-section">
+  <h3 class="section-header">Pages</h3>
+
+  <ul>
+  
+    <li class="file"><a href="./Gemfile.html">Gemfile</a>
+  
+  </ul>
+</nav>
+
     <nav id="classindex-section" class="section project-section">
   <h3 class="section-header">Class and Module Index</h3>
 
   <ul class="link-list">
   
+    <li><a href="./Options.html">Options</a>
+  
     <li><a href="./PlayBot.html">PlayBot</a>
   
     <li><a href="./SitePlugin.html">SitePlugin</a>
   
-    <li><a href="./TestPlugin.html">TestPlugin</a>
+    <li><a href="./SoundcloudPlugin.html">SoundcloudPlugin</a>
   
     <li><a href="./TestPlugin1.html">TestPlugin1</a>
   
     <li><a href="./TestPlugin2.html">TestPlugin2</a>
   
+    <li><a href="./YoutubePlugin.html">YoutubePlugin</a>
+  
   </ul>
 </nav>
 
@@ -154,7 +167,7 @@ can_handle?(site) method.</p>
           <div class="method-source-code" id="for_site-source">
             <pre><span class="ruby-comment"># File lib/site_plugin.rb, line 16</span>
 <span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">for_site</span>(<span class="ruby-identifier">site</span>)
-    <span class="ruby-identifier">@@repository</span>.<span class="ruby-identifier">find</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">handler</span><span class="ruby-operator">|</span> <span class="ruby-identifier">handler</span>.<span class="ruby-identifier">can_handle?</span> <span class="ruby-identifier">site</span> }
+    <span class="ruby-identifier">@@repository</span>.<span class="ruby-identifier">find</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">handler</span><span class="ruby-operator">|</span> <span class="ruby-identifier">handler</span>.<span class="ruby-identifier">can_handle?</span> <span class="ruby-identifier">site</span> }
 <span class="ruby-keyword">end</span></pre>
           </div><!-- for_site-source -->
           
@@ -232,35 +245,43 @@ can_handle?(site) method.</p>
       <h3 class="section-header">Public Instance Methods</h3>
 
     
-      <div id="method-i-can_handle-3F" class="method-detail ">
+      <div id="method-i-method_missing" class="method-detail ">
         
         <div class="method-heading">
-          <span class="method-name">can_handle?</span><span
-            class="method-args">(site)</span>
+          <span class="method-name">method_missing</span><span
+            class="method-args">(method)</span>
           <span class="method-click-advice">click to toggle source</span>
         </div>
         
 
         <div class="method-description">
           
-          <p>A place holder method. This method <strong>must</strong> be implemented in
-the subclasses.</p>
+          <p>Raise an error message if the missing method should have been implemented
+in the subclasse. This possible methode are:</p>
+<ul><li>
+<p><code>#can_handle?</code></p>
+</li><li>
+<p><code>#get</code></p>
+</li></ul>
+
+<pre>They *must* be implemented by the subclasse.</pre>
           
 
           
-          <div class="method-source-code" id="can_handle-3F-source">
-            <pre><span class="ruby-comment"># File lib/site_plugin.rb, line 21</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">can_handle?</span>(<span class="ruby-identifier">site</span>)
-    <span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;Method not implemented !&quot;</span>
+          <div class="method-source-code" id="method_missing-source">
+            <pre><span class="ruby-comment"># File lib/site_plugin.rb, line 26</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">method_missing</span>(<span class="ruby-identifier">method</span>)
+    <span class="ruby-keyword">return</span> <span class="ruby-keyword">unless</span> [<span class="ruby-string">'can_handle?'</span>, <span class="ruby-string">'get'</span>].<span class="ruby-identifier">include</span>(<span class="ruby-identifier">method</span>)
+    <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Method #{method} not implemented !&quot;</span>
 <span class="ruby-keyword">end</span></pre>
-          </div><!-- can_handle-3F-source -->
+          </div><!-- method_missing-source -->
           
         </div>
 
         
 
         
-      </div><!-- can_handle-3F-method -->
+      </div><!-- method_missing-method -->
 
     
     </section><!-- public-instance-method-details -->
diff --git a/doc/SoundcloudPlugin.html b/doc/SoundcloudPlugin.html
new file mode 100644
index 0000000000000000000000000000000000000000..48f3a4c54d583ba40d9049a186bf5e2af8a800ba
--- /dev/null
+++ b/doc/SoundcloudPlugin.html
@@ -0,0 +1,259 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
+
+<title>class SoundcloudPlugin - RDoc Documentation</title>
+
+<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
+
+<script type="text/javascript">
+  var rdoc_rel_prefix = "./";
+</script>
+
+<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
+<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
+<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
+<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
+<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
+<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
+
+
+<body id="top" class="class">
+<nav id="metadata">
+  <nav id="home-section" class="section">
+  <h3 class="section-header">
+    <a href="./index.html">Home</a>
+    <a href="./table_of_contents.html#classes">Classes</a>
+    <a href="./table_of_contents.html#methods">Methods</a>
+  </h3>
+</nav>
+
+
+  <nav id="search-section" class="section project-section" class="initially-hidden">
+  <form action="#" method="get" accept-charset="utf-8">
+    <h3 class="section-header">
+      <input type="text" name="search" placeholder="Search" id="search-field"
+             title="Type to search, Up and Down to navigate, Enter to load">
+    </h3>
+  </form>
+
+  <ul id="search-results" class="initially-hidden"></ul>
+</nav>
+
+
+  <div id="file-metadata">
+    <nav id="file-list-section" class="section">
+  <h3 class="section-header">Defined In</h3>
+  <ul>
+    <li>plugins/soundcloud_plugin.rb
+  </ul>
+</nav>
+
+    
+  </div>
+
+  <div id="class-metadata">
+    
+    <nav id="parent-class-section" class="section">
+  <h3 class="section-header">Parent</h3>
+  
+  <p class="link"><a href="SitePlugin.html">SitePlugin</a>
+  
+</nav>
+
+    
+    <!-- Method Quickref -->
+<nav id="method-list-section" class="section">
+  <h3 class="section-header">Methods</h3>
+
+  <ul class="link-list">
+    
+    <li><a href="#method-c-can_handle-3F">::can_handle?</a>
+    
+    <li><a href="#method-c-new">::new</a>
+    
+    <li><a href="#method-i-get">#get</a>
+    
+  </ul>
+</nav>
+
+  </div>
+
+  <div id="project-metadata">
+    <nav id="fileindex-section" class="section project-section">
+  <h3 class="section-header">Pages</h3>
+
+  <ul>
+  
+    <li class="file"><a href="./Gemfile.html">Gemfile</a>
+  
+  </ul>
+</nav>
+
+    <nav id="classindex-section" class="section project-section">
+  <h3 class="section-header">Class and Module Index</h3>
+
+  <ul class="link-list">
+  
+    <li><a href="./Options.html">Options</a>
+  
+    <li><a href="./PlayBot.html">PlayBot</a>
+  
+    <li><a href="./SitePlugin.html">SitePlugin</a>
+  
+    <li><a href="./SoundcloudPlugin.html">SoundcloudPlugin</a>
+  
+    <li><a href="./TestPlugin1.html">TestPlugin1</a>
+  
+    <li><a href="./TestPlugin2.html">TestPlugin2</a>
+  
+    <li><a href="./YoutubePlugin.html">YoutubePlugin</a>
+  
+  </ul>
+</nav>
+
+  </div>
+</nav>
+
+<div id="documentation">
+  <h1 class="class">class SoundcloudPlugin</h1>
+
+  <div id="description" class="description">
+    
+<p><a href="SitePlugin.html">SitePlugin</a> for Soundcloud</p>
+
+<p>Need an client ID (soundcloud_client_id).</p>
+
+  </div><!-- description -->
+
+  
+  
+  
+  <section id="5Buntitled-5D" class="documentation-section">
+    
+
+    
+
+    
+
+    
+
+    <!-- Methods -->
+    
+     <section id="public-class-5Buntitled-5D-method-details" class="method-section section">
+      <h3 class="section-header">Public Class Methods</h3>
+
+    
+      <div id="method-c-can_handle-3F" class="method-detail ">
+        
+        <div class="method-heading">
+          <span class="method-name">can_handle?</span><span
+            class="method-args">(site)</span>
+          <span class="method-click-advice">click to toggle source</span>
+        </div>
+        
+
+        <div class="method-description">
+          
+          
+          
+
+          
+          <div class="method-source-code" id="can_handle-3F-source">
+            <pre><span class="ruby-comment"># File plugins/soundcloud_plugin.rb, line 11</span>
+<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">can_handle?</span>(<span class="ruby-identifier">site</span>) 
+    <span class="ruby-identifier">site</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%r^https?:\/\/(www\.)?soundcloud\.com\/[a-zA-Z0-9\/_-]+$/</span>
+<span class="ruby-keyword">end</span></pre>
+          </div><!-- can_handle-3F-source -->
+          
+        </div>
+
+        
+
+        
+      </div><!-- can_handle-3F-method -->
+
+    
+      <div id="method-c-new" class="method-detail ">
+        
+        <div class="method-heading">
+          <span class="method-name">new</span><span
+            class="method-args">(options)</span>
+          <span class="method-click-advice">click to toggle source</span>
+        </div>
+        
+
+        <div class="method-description">
+          
+          
+          
+
+          
+          <div class="method-source-code" id="new-source">
+            <pre><span class="ruby-comment"># File plugins/soundcloud_plugin.rb, line 16</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">options</span>)
+    <span class="ruby-ivar">@client</span> = <span class="ruby-constant">Soundcloud</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value">:client_id</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:soundcloud_client_id</span>])
+<span class="ruby-keyword">end</span></pre>
+          </div><!-- new-source -->
+          
+        </div>
+
+        
+
+        
+      </div><!-- new-method -->
+
+    
+    </section><!-- public-class-method-details -->
+  
+     <section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
+      <h3 class="section-header">Public Instance Methods</h3>
+
+    
+      <div id="method-i-get" class="method-detail ">
+        
+        <div class="method-heading">
+          <span class="method-name">get</span><span
+            class="method-args">(url)</span>
+          <span class="method-click-advice">click to toggle source</span>
+        </div>
+        
+
+        <div class="method-description">
+          
+          
+          
+
+          
+          <div class="method-source-code" id="get-source">
+            <pre><span class="ruby-comment"># File plugins/soundcloud_plugin.rb, line 20</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">get</span>(<span class="ruby-identifier">url</span>)
+    <span class="ruby-identifier">track</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">get</span>(<span class="ruby-string">'/resolve'</span>, <span class="ruby-value">:url</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">url</span>)
+
+    {<span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">track</span>.<span class="ruby-identifier">title</span>, <span class="ruby-value">:author</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">track</span>.<span class="ruby-identifier">user</span>.<span class="ruby-identifier">username</span>}
+<span class="ruby-keyword">end</span></pre>
+          </div><!-- get-source -->
+          
+        </div>
+
+        
+
+        
+      </div><!-- get-method -->
+
+    
+    </section><!-- public-instance-method-details -->
+  
+  </section><!-- 5Buntitled-5D -->
+
+</div><!-- documentation -->
+
+
+<footer id="validator-badges">
+  <p><a href="http://validator.w3.org/check/referer">[Validate]</a>
+  <p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
+  <p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
+</footer>
+
diff --git a/TestPlugin1.html b/doc/TestPlugin1.html
similarity index 91%
rename from TestPlugin1.html
rename to doc/TestPlugin1.html
index d77a82c9167965a0755983359e0bc8e94199672a..f2ef3baee99a918412ae75814454bcc41ce292e5 100644
--- a/TestPlugin1.html
+++ b/doc/TestPlugin1.html
@@ -78,22 +78,35 @@
   </div>
 
   <div id="project-metadata">
-    
+    <nav id="fileindex-section" class="section project-section">
+  <h3 class="section-header">Pages</h3>
+
+  <ul>
+  
+    <li class="file"><a href="./Gemfile.html">Gemfile</a>
+  
+  </ul>
+</nav>
+
     <nav id="classindex-section" class="section project-section">
   <h3 class="section-header">Class and Module Index</h3>
 
   <ul class="link-list">
   
+    <li><a href="./Options.html">Options</a>
+  
     <li><a href="./PlayBot.html">PlayBot</a>
   
     <li><a href="./SitePlugin.html">SitePlugin</a>
   
-    <li><a href="./TestPlugin.html">TestPlugin</a>
+    <li><a href="./SoundcloudPlugin.html">SoundcloudPlugin</a>
   
     <li><a href="./TestPlugin1.html">TestPlugin1</a>
   
     <li><a href="./TestPlugin2.html">TestPlugin2</a>
   
+    <li><a href="./YoutubePlugin.html">YoutubePlugin</a>
+  
   </ul>
 </nav>
 
@@ -141,7 +154,7 @@
 
           
           <div class="method-source-code" id="can_handle-3F-source">
-            <pre><span class="ruby-comment"># File spec/site_plugin_spec.rb, line 8</span>
+            <pre><span class="ruby-comment"># File spec/site_plugin_spec.rb, line 7</span>
 <span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">can_handle?</span>(<span class="ruby-identifier">site</span>)
     <span class="ruby-keyword">false</span>
 <span class="ruby-keyword">end</span></pre>
diff --git a/TestPlugin2.html b/doc/TestPlugin2.html
similarity index 91%
rename from TestPlugin2.html
rename to doc/TestPlugin2.html
index a3a1588963908ec129869c264ed6463597dd93ad..5bc0f9c781be9fc170d395e2f4d8d972e7ecb1dc 100644
--- a/TestPlugin2.html
+++ b/doc/TestPlugin2.html
@@ -78,22 +78,35 @@
   </div>
 
   <div id="project-metadata">
-    
+    <nav id="fileindex-section" class="section project-section">
+  <h3 class="section-header">Pages</h3>
+
+  <ul>
+  
+    <li class="file"><a href="./Gemfile.html">Gemfile</a>
+  
+  </ul>
+</nav>
+
     <nav id="classindex-section" class="section project-section">
   <h3 class="section-header">Class and Module Index</h3>
 
   <ul class="link-list">
   
+    <li><a href="./Options.html">Options</a>
+  
     <li><a href="./PlayBot.html">PlayBot</a>
   
     <li><a href="./SitePlugin.html">SitePlugin</a>
   
-    <li><a href="./TestPlugin.html">TestPlugin</a>
+    <li><a href="./SoundcloudPlugin.html">SoundcloudPlugin</a>
   
     <li><a href="./TestPlugin1.html">TestPlugin1</a>
   
     <li><a href="./TestPlugin2.html">TestPlugin2</a>
   
+    <li><a href="./YoutubePlugin.html">YoutubePlugin</a>
+  
   </ul>
 </nav>
 
@@ -141,7 +154,7 @@
 
           
           <div class="method-source-code" id="can_handle-3F-source">
-            <pre><span class="ruby-comment"># File spec/site_plugin_spec.rb, line 20</span>
+            <pre><span class="ruby-comment"># File spec/site_plugin_spec.rb, line 19</span>
 <span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">can_handle?</span>(<span class="ruby-identifier">site</span>)
     <span class="ruby-identifier">site</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%rtest/</span>
 <span class="ruby-keyword">end</span></pre>
diff --git a/TestPlugin.html b/doc/YoutubePlugin.html
similarity index 62%
rename from TestPlugin.html
rename to doc/YoutubePlugin.html
index 8273ae91b41462a2808c630589135d9490a558e8..ecdfd8e4e8bceeefb74f7ab2c92ce0c5abb19fbf 100644
--- a/TestPlugin.html
+++ b/doc/YoutubePlugin.html
@@ -4,7 +4,7 @@
 <head>
 <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
 
-<title>class TestPlugin - RDoc Documentation</title>
+<title>class YoutubePlugin - RDoc Documentation</title>
 
 <link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
 
@@ -47,7 +47,7 @@
     <nav id="file-list-section" class="section">
   <h3 class="section-header">Defined In</h3>
   <ul>
-    <li>plugins/test_plugin.rb
+    <li>plugins/youtube_plugin.rb
   </ul>
 </nav>
 
@@ -74,28 +74,43 @@
     
     <li><a href="#method-c-new">::new</a>
     
+    <li><a href="#method-i-get">#get</a>
+    
   </ul>
 </nav>
 
   </div>
 
   <div id="project-metadata">
-    
+    <nav id="fileindex-section" class="section project-section">
+  <h3 class="section-header">Pages</h3>
+
+  <ul>
+  
+    <li class="file"><a href="./Gemfile.html">Gemfile</a>
+  
+  </ul>
+</nav>
+
     <nav id="classindex-section" class="section project-section">
   <h3 class="section-header">Class and Module Index</h3>
 
   <ul class="link-list">
   
+    <li><a href="./Options.html">Options</a>
+  
     <li><a href="./PlayBot.html">PlayBot</a>
   
     <li><a href="./SitePlugin.html">SitePlugin</a>
   
-    <li><a href="./TestPlugin.html">TestPlugin</a>
+    <li><a href="./SoundcloudPlugin.html">SoundcloudPlugin</a>
   
     <li><a href="./TestPlugin1.html">TestPlugin1</a>
   
     <li><a href="./TestPlugin2.html">TestPlugin2</a>
   
+    <li><a href="./YoutubePlugin.html">YoutubePlugin</a>
+  
   </ul>
 </nav>
 
@@ -103,10 +118,12 @@
 </nav>
 
 <div id="documentation">
-  <h1 class="class">class TestPlugin</h1>
+  <h1 class="class">class YoutubePlugin</h1>
 
   <div id="description" class="description">
     
+<p><a href="SitePlugin.html">SitePlugin</a> for YouTube</p>
+
   </div><!-- description -->
 
   
@@ -143,9 +160,9 @@
 
           
           <div class="method-source-code" id="can_handle-3F-source">
-            <pre><span class="ruby-comment"># File plugins/test_plugin.rb, line 5</span>
+            <pre><span class="ruby-comment"># File plugins/youtube_plugin.rb, line 9</span>
 <span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">can_handle?</span>(<span class="ruby-identifier">site</span>) 
-   <span class="ruby-identifier">site</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%r(www.)?youtube.(fr|com)|youtu.be/</span>
+    <span class="ruby-identifier">site</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%r^https?:\/\/((www.)?youtube.(fr|com)\/watch\?v=|youtu\.be\/)[a-zA-Z0-9]+$/</span>
 <span class="ruby-keyword">end</span></pre>
           </div><!-- can_handle-3F-source -->
           
@@ -161,7 +178,7 @@
         
         <div class="method-heading">
           <span class="method-name">new</span><span
-            class="method-args">()</span>
+            class="method-args">(options)</span>
           <span class="method-click-advice">click to toggle source</span>
         </div>
         
@@ -173,9 +190,9 @@
 
           
           <div class="method-source-code" id="new-source">
-            <pre><span class="ruby-comment"># File plugins/test_plugin.rb, line 9</span>
-<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>
-    <span class="ruby-ivar">@testVar</span> = <span class="ruby-keyword">true</span>
+            <pre><span class="ruby-comment"># File plugins/youtube_plugin.rb, line 14</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">options</span>)
+    <span class="ruby-ivar">@client</span> = <span class="ruby-constant">YouTubeIt</span><span class="ruby-operator">::</span><span class="ruby-constant">Client</span>.<span class="ruby-identifier">new</span>
 <span class="ruby-keyword">end</span></pre>
           </div><!-- new-source -->
           
@@ -189,6 +206,43 @@
     
     </section><!-- public-class-method-details -->
   
+     <section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
+      <h3 class="section-header">Public Instance Methods</h3>
+
+    
+      <div id="method-i-get" class="method-detail ">
+        
+        <div class="method-heading">
+          <span class="method-name">get</span><span
+            class="method-args">(url)</span>
+          <span class="method-click-advice">click to toggle source</span>
+        </div>
+        
+
+        <div class="method-description">
+          
+          
+          
+
+          
+          <div class="method-source-code" id="get-source">
+            <pre><span class="ruby-comment"># File plugins/youtube_plugin.rb, line 18</span>
+<span class="ruby-keyword">def</span> <span class="ruby-identifier">get</span>(<span class="ruby-identifier">url</span>)
+    <span class="ruby-identifier">video</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">video_by</span>(<span class="ruby-identifier">url</span>)
+    {<span class="ruby-value">:title</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">video</span>.<span class="ruby-identifier">title</span>, <span class="ruby-value">:author</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">video</span>.<span class="ruby-identifier">author</span>.<span class="ruby-identifier">name</span>}
+<span class="ruby-keyword">end</span></pre>
+          </div><!-- get-source -->
+          
+        </div>
+
+        
+
+        
+      </div><!-- get-method -->
+
+    
+    </section><!-- public-instance-method-details -->
+  
   </section><!-- 5Buntitled-5D -->
 
 </div><!-- documentation -->
diff --git a/doc/created.rid b/doc/created.rid
new file mode 100644
index 0000000000000000000000000000000000000000..2a9371446c61535ec2a43333f2dd35e4498e6642
--- /dev/null
+++ b/doc/created.rid
@@ -0,0 +1,11 @@
+Wed, 02 Jan 2013 21:52:51 +0100
+./Gemfile	Wed, 02 Jan 2013 21:52:46 +0100
+./plugins/youtube_plugin.rb	Wed, 02 Jan 2013 21:52:46 +0100
+./plugins/soundcloud_plugin.rb	Wed, 02 Jan 2013 21:52:46 +0100
+./run.rb	Wed, 02 Jan 2013 21:52:46 +0100
+./lib/options.rb	Wed, 02 Jan 2013 21:52:46 +0100
+./lib/playbot.rb	Wed, 02 Jan 2013 21:52:46 +0100
+./lib/site_plugin.rb	Wed, 02 Jan 2013 21:52:46 +0100
+./spec/youtube_plugin_spec.rb	Wed, 02 Jan 2013 21:52:46 +0100
+./spec/site_plugin_spec.rb	Wed, 02 Jan 2013 21:52:46 +0100
+./spec/soundcloud_plugin_spec.rb	Wed, 02 Jan 2013 21:52:46 +0100
diff --git a/images/add.png b/doc/images/add.png
similarity index 100%
rename from images/add.png
rename to doc/images/add.png
diff --git a/images/brick.png b/doc/images/brick.png
similarity index 100%
rename from images/brick.png
rename to doc/images/brick.png
diff --git a/images/brick_link.png b/doc/images/brick_link.png
similarity index 100%
rename from images/brick_link.png
rename to doc/images/brick_link.png
diff --git a/images/bug.png b/doc/images/bug.png
similarity index 100%
rename from images/bug.png
rename to doc/images/bug.png
diff --git a/images/bullet_black.png b/doc/images/bullet_black.png
similarity index 100%
rename from images/bullet_black.png
rename to doc/images/bullet_black.png
diff --git a/images/bullet_toggle_minus.png b/doc/images/bullet_toggle_minus.png
similarity index 100%
rename from images/bullet_toggle_minus.png
rename to doc/images/bullet_toggle_minus.png
diff --git a/images/bullet_toggle_plus.png b/doc/images/bullet_toggle_plus.png
similarity index 100%
rename from images/bullet_toggle_plus.png
rename to doc/images/bullet_toggle_plus.png
diff --git a/images/date.png b/doc/images/date.png
similarity index 100%
rename from images/date.png
rename to doc/images/date.png
diff --git a/images/delete.png b/doc/images/delete.png
similarity index 100%
rename from images/delete.png
rename to doc/images/delete.png
diff --git a/images/find.png b/doc/images/find.png
similarity index 100%
rename from images/find.png
rename to doc/images/find.png
diff --git a/images/loadingAnimation.gif b/doc/images/loadingAnimation.gif
similarity index 100%
rename from images/loadingAnimation.gif
rename to doc/images/loadingAnimation.gif
diff --git a/images/macFFBgHack.png b/doc/images/macFFBgHack.png
similarity index 100%
rename from images/macFFBgHack.png
rename to doc/images/macFFBgHack.png
diff --git a/images/package.png b/doc/images/package.png
similarity index 100%
rename from images/package.png
rename to doc/images/package.png
diff --git a/images/page_green.png b/doc/images/page_green.png
similarity index 100%
rename from images/page_green.png
rename to doc/images/page_green.png
diff --git a/images/page_white_text.png b/doc/images/page_white_text.png
similarity index 100%
rename from images/page_white_text.png
rename to doc/images/page_white_text.png
diff --git a/images/page_white_width.png b/doc/images/page_white_width.png
similarity index 100%
rename from images/page_white_width.png
rename to doc/images/page_white_width.png
diff --git a/images/plugin.png b/doc/images/plugin.png
similarity index 100%
rename from images/plugin.png
rename to doc/images/plugin.png
diff --git a/images/ruby.png b/doc/images/ruby.png
similarity index 100%
rename from images/ruby.png
rename to doc/images/ruby.png
diff --git a/images/tag_blue.png b/doc/images/tag_blue.png
similarity index 100%
rename from images/tag_blue.png
rename to doc/images/tag_blue.png
diff --git a/images/tag_green.png b/doc/images/tag_green.png
similarity index 100%
rename from images/tag_green.png
rename to doc/images/tag_green.png
diff --git a/images/transparent.png b/doc/images/transparent.png
similarity index 100%
rename from images/transparent.png
rename to doc/images/transparent.png
diff --git a/images/wrench.png b/doc/images/wrench.png
similarity index 100%
rename from images/wrench.png
rename to doc/images/wrench.png
diff --git a/images/wrench_orange.png b/doc/images/wrench_orange.png
similarity index 100%
rename from images/wrench_orange.png
rename to doc/images/wrench_orange.png
diff --git a/images/zoom.png b/doc/images/zoom.png
similarity index 100%
rename from images/zoom.png
rename to doc/images/zoom.png
diff --git a/index.html b/doc/index.html
similarity index 85%
rename from index.html
rename to doc/index.html
index 8d9d870432a5fee822abe5c9c686d334cea270b4..51c7a1271c8d148ef9ea77203ac3f98cbb0e3294 100644
--- a/index.html
+++ b/doc/index.html
@@ -44,22 +44,35 @@
 
 
   <div id="project-metadata">
-    
+    <nav id="fileindex-section" class="section project-section">
+  <h3 class="section-header">Pages</h3>
+
+  <ul>
+  
+    <li class="file"><a href="./Gemfile.html">Gemfile</a>
+  
+  </ul>
+</nav>
+
     <nav id="classindex-section" class="section project-section">
   <h3 class="section-header">Class and Module Index</h3>
 
   <ul class="link-list">
   
+    <li><a href="./Options.html">Options</a>
+  
     <li><a href="./PlayBot.html">PlayBot</a>
   
     <li><a href="./SitePlugin.html">SitePlugin</a>
   
-    <li><a href="./TestPlugin.html">TestPlugin</a>
+    <li><a href="./SoundcloudPlugin.html">SoundcloudPlugin</a>
   
     <li><a href="./TestPlugin1.html">TestPlugin1</a>
   
     <li><a href="./TestPlugin2.html">TestPlugin2</a>
   
+    <li><a href="./YoutubePlugin.html">YoutubePlugin</a>
+  
   </ul>
 </nav>
 
diff --git a/js/darkfish.js b/doc/js/darkfish.js
similarity index 100%
rename from js/darkfish.js
rename to doc/js/darkfish.js
diff --git a/js/jquery.js b/doc/js/jquery.js
similarity index 100%
rename from js/jquery.js
rename to doc/js/jquery.js
diff --git a/js/navigation.js b/doc/js/navigation.js
similarity index 100%
rename from js/navigation.js
rename to doc/js/navigation.js
diff --git a/js/search.js b/doc/js/search.js
similarity index 100%
rename from js/search.js
rename to doc/js/search.js
diff --git a/doc/js/search_index.js b/doc/js/search_index.js
new file mode 100644
index 0000000000000000000000000000000000000000..3d2dcbfaebbae350023742414087839a4f9d8d99
--- /dev/null
+++ b/doc/js/search_index.js
@@ -0,0 +1 @@
+var search_data = {"index":{"searchIndex":["options","playbot","siteplugin","soundcloudplugin","testplugin1","testplugin2","youtubeplugin","add_custom_handlers()","can_handle?()","can_handle?()","can_handle?()","can_handle?()","for_site()","get()","get()","inherited()","method_missing()","new()","new()","new()","new()","read_all()","read_file()","repository()","gemfile"],"longSearchIndex":["options","playbot","siteplugin","soundcloudplugin","testplugin1","testplugin2","youtubeplugin","playbot#add_custom_handlers()","soundcloudplugin::can_handle?()","testplugin1::can_handle?()","testplugin2::can_handle?()","youtubeplugin::can_handle?()","siteplugin::for_site()","soundcloudplugin#get()","youtubeplugin#get()","siteplugin::inherited()","siteplugin#method_missing()","options::new()","playbot::new()","soundcloudplugin::new()","youtubeplugin::new()","options#read_all()","options#read_file()","siteplugin::repository()",""],"info":[["Options","","Options.html","","<p>Allow us to get options, set by user or default ones.\n"],["PlayBot","","PlayBot.html","",""],["SitePlugin","","SitePlugin.html","","<p>Implement a plugin system.\n<p>Each plugin have to inherite from this class and implement a\ncan_handle?(site) …\n"],["SoundcloudPlugin","","SoundcloudPlugin.html","","<p>SitePlugin for Soundcloud\n<p>Need an client ID (soundcloud_client_id).\n"],["TestPlugin1","","TestPlugin1.html","",""],["TestPlugin2","","TestPlugin2.html","",""],["YoutubePlugin","","YoutubePlugin.html","","<p>SitePlugin for YouTube\n"],["add_custom_handlers","PlayBot","PlayBot.html#method-i-add_custom_handlers","()","<p>This metod is called by IRCBot#connect_socket\n"],["can_handle?","SoundcloudPlugin","SoundcloudPlugin.html#method-c-can_handle-3F","(site)",""],["can_handle?","TestPlugin1","TestPlugin1.html#method-c-can_handle-3F","(site)",""],["can_handle?","TestPlugin2","TestPlugin2.html#method-c-can_handle-3F","(site)",""],["can_handle?","YoutubePlugin","YoutubePlugin.html#method-c-can_handle-3F","(site)",""],["for_site","SitePlugin","SitePlugin.html#method-c-for_site","(site)","<p>Return the plugin that can handle a given site.\n"],["get","SoundcloudPlugin","SoundcloudPlugin.html#method-i-get","(url)",""],["get","YoutubePlugin","YoutubePlugin.html#method-i-get","(url)",""],["inherited","SitePlugin","SitePlugin.html#method-c-inherited","(target)",""],["method_missing","SitePlugin","SitePlugin.html#method-i-method_missing","(method)","<p>Raise an error message if the missing method should have been implemented\nin the subclasse. This possible …\n"],["new","Options","Options.html#method-c-new","(file = \"#{ENV['HOME']}/.playbot\")",""],["new","PlayBot","PlayBot.html#method-c-new","(options = {})","<p>Start a new instance\n<p>Options:\n<p><code>:address</code>: irc server\n"],["new","SoundcloudPlugin","SoundcloudPlugin.html#method-c-new","(options)",""],["new","YoutubePlugin","YoutubePlugin.html#method-c-new","(options)",""],["read_all","Options","Options.html#method-i-read_all","()","<p>Read the options from commande line and configuration file. Command line\noverwrite configuration file. …\n"],["read_file","Options","Options.html#method-i-read_file","()","<p>Read the options from the configuration file.\n"],["repository","SitePlugin","SitePlugin.html#method-c-repository","()",""],["Gemfile","","Gemfile.html","","<p>source “rubygems.org” gem “net-yail” gem “rspec” gem “youtube_it” …\n"]]}}
\ No newline at end of file
diff --git a/js/searcher.js b/doc/js/searcher.js
similarity index 100%
rename from js/searcher.js
rename to doc/js/searcher.js
diff --git a/rdoc.css b/doc/rdoc.css
similarity index 100%
rename from rdoc.css
rename to doc/rdoc.css
diff --git a/table_of_contents.html b/doc/table_of_contents.html
similarity index 63%
rename from table_of_contents.html
rename to doc/table_of_contents.html
index 2b27aaa454328fabd1795ac2b4f5de46b3a565e6..835d4d1c805007b70d4ef968a1d177266e484ced 100644
--- a/table_of_contents.html
+++ b/doc/table_of_contents.html
@@ -23,17 +23,27 @@
 <body class="indexpage">
 <h1>Table of Contents - RDoc Documentation</h1>
 
+<h2>Pages</h2>
+<ul>
+  <li class="file">
+    <a href="Gemfile.html">Gemfile</a>
+  </li>
+  
+</ul>
 
 <h2 id="classes">Classes/Modules</h2>
 <ul>
   <li class="class">
+    <a href="Options.html">Options</a>
+  </li>
+    <li class="class">
     <a href="PlayBot.html">PlayBot</a>
   </li>
     <li class="class">
     <a href="SitePlugin.html">SitePlugin</a>
   </li>
     <li class="class">
-    <a href="TestPlugin.html">TestPlugin</a>
+    <a href="SoundcloudPlugin.html">SoundcloudPlugin</a>
   </li>
     <li class="class">
     <a href="TestPlugin1.html">TestPlugin1</a>
@@ -41,31 +51,48 @@
     <li class="class">
     <a href="TestPlugin2.html">TestPlugin2</a>
   </li>
+    <li class="class">
+    <a href="YoutubePlugin.html">YoutubePlugin</a>
+  </li>
   
 </ul>
 
 <h2 id="methods">Methods</h2>
 <ul>
   
-    <li class="method"><a href="TestPlugin.html#method-c-can_handle-3F">::can_handle? &mdash; TestPlugin</a>
+    <li class="method"><a href="YoutubePlugin.html#method-c-can_handle-3F">::can_handle? &mdash; YoutubePlugin</a>
   
     <li class="method"><a href="TestPlugin1.html#method-c-can_handle-3F">::can_handle? &mdash; TestPlugin1</a>
   
+    <li class="method"><a href="SoundcloudPlugin.html#method-c-can_handle-3F">::can_handle? &mdash; SoundcloudPlugin</a>
+  
     <li class="method"><a href="TestPlugin2.html#method-c-can_handle-3F">::can_handle? &mdash; TestPlugin2</a>
   
     <li class="method"><a href="SitePlugin.html#method-c-for_site">::for_site &mdash; SitePlugin</a>
   
     <li class="method"><a href="SitePlugin.html#method-c-inherited">::inherited &mdash; SitePlugin</a>
   
-    <li class="method"><a href="PlayBot.html#method-c-new">::new &mdash; PlayBot</a>
+    <li class="method"><a href="SoundcloudPlugin.html#method-c-new">::new &mdash; SoundcloudPlugin</a>
+  
+    <li class="method"><a href="Options.html#method-c-new">::new &mdash; Options</a>
   
-    <li class="method"><a href="TestPlugin.html#method-c-new">::new &mdash; TestPlugin</a>
+    <li class="method"><a href="YoutubePlugin.html#method-c-new">::new &mdash; YoutubePlugin</a>
+  
+    <li class="method"><a href="PlayBot.html#method-c-new">::new &mdash; PlayBot</a>
   
     <li class="method"><a href="SitePlugin.html#method-c-repository">::repository &mdash; SitePlugin</a>
   
     <li class="method"><a href="PlayBot.html#method-i-add_custom_handlers">#add_custom_handlers &mdash; PlayBot</a>
   
-    <li class="method"><a href="SitePlugin.html#method-i-can_handle-3F">#can_handle? &mdash; SitePlugin</a>
+    <li class="method"><a href="YoutubePlugin.html#method-i-get">#get &mdash; YoutubePlugin</a>
+  
+    <li class="method"><a href="SoundcloudPlugin.html#method-i-get">#get &mdash; SoundcloudPlugin</a>
+  
+    <li class="method"><a href="SitePlugin.html#method-i-method_missing">#method_missing &mdash; SitePlugin</a>
+  
+    <li class="method"><a href="Options.html#method-i-read_all">#read_all &mdash; Options</a>
+  
+    <li class="method"><a href="Options.html#method-i-read_file">#read_file &mdash; Options</a>
   
 </ul>
 
diff --git a/js/search_index.js b/js/search_index.js
deleted file mode 100644
index d759daad508694984a4a6fb45ee1991d5d565b69..0000000000000000000000000000000000000000
--- a/js/search_index.js
+++ /dev/null
@@ -1 +0,0 @@
-var search_data = {"index":{"searchIndex":["playbot","siteplugin","testplugin","testplugin1","testplugin2","add_custom_handlers()","can_handle?()","can_handle?()","can_handle?()","can_handle?()","for_site()","inherited()","new()","new()","repository()"],"longSearchIndex":["playbot","siteplugin","testplugin","testplugin1","testplugin2","playbot#add_custom_handlers()","siteplugin#can_handle?()","testplugin::can_handle?()","testplugin1::can_handle?()","testplugin2::can_handle?()","siteplugin::for_site()","siteplugin::inherited()","playbot::new()","testplugin::new()","siteplugin::repository()"],"info":[["PlayBot","","PlayBot.html","",""],["SitePlugin","","SitePlugin.html","","<p>Implement a plugin system.\n<p>Each plugin have to inherite from this class and implement a\ncan_handle?(site) …\n"],["TestPlugin","","TestPlugin.html","",""],["TestPlugin1","","TestPlugin1.html","",""],["TestPlugin2","","TestPlugin2.html","",""],["add_custom_handlers","PlayBot","PlayBot.html#method-i-add_custom_handlers","()","<p>This metod is called by IRCBot#connect_socket\n"],["can_handle?","SitePlugin","SitePlugin.html#method-i-can_handle-3F","(site)","<p>A place holder method. This method <strong>must</strong> be implemented in\nthe subclasses.\n"],["can_handle?","TestPlugin","TestPlugin.html#method-c-can_handle-3F","(site)",""],["can_handle?","TestPlugin1","TestPlugin1.html#method-c-can_handle-3F","(site)",""],["can_handle?","TestPlugin2","TestPlugin2.html#method-c-can_handle-3F","(site)",""],["for_site","SitePlugin","SitePlugin.html#method-c-for_site","(site)","<p>Return the plugin that can handle a given site.\n"],["inherited","SitePlugin","SitePlugin.html#method-c-inherited","(target)",""],["new","PlayBot","PlayBot.html#method-c-new","(options = {})","<p>Start a new instance\n<p>Options:\n<p><code>:address</code>: irc server\n"],["new","TestPlugin","TestPlugin.html#method-c-new","()",""],["repository","SitePlugin","SitePlugin.html#method-c-repository","()",""]]}}
\ No newline at end of file