Beginner issues about custom class files [closed]

I am trying to write my first ugly .cls for LaTeX related to the following problem which Mike and me are trying to solve (we will post soon the link to Github for people who are interested to work with us). I have two baby questions which probably can be easily answered by reading the documentation but I would like to get at least some push.

First question is about multicolumn environment. This snippet of code

\RequirePackage{multicol}
% Two-column lists (itemize, description, etc.)
\SetEnumitemKey{twocol}{
itemsep=1\itemsep,
parsep=1\parsep,
before=\raggedcolumns\begin{multicols}{2},
after=\end{multicols}}


is just not working for me. The second question is how I can pass options to hyperref

\RequirePackage{color}
%\RequirePackage{hyperref}
%\DeclareOption*{\PassOptionsToPackage{\CurrentOption}{hyperref}
%\ProcessOptions\relax
%\definecolor{darkred}{rgb}{0.5,0,0}
%\definecolor{darkgreen}{rgb}{0,0.5,0}
%\definecolor{darkblue}{rgb}{0,0,0.5}
%filecolor=darkgreen,
%urlcolor=darkred,
%citecolor=darkblue}}
\RequirePackage{hyperref}


I made some experiments based on the answers found on TeX.SE but I was not able to change the default behavior.

News: The further development of Syllabus-Generator is moved to GitHub for people who are curious and have any desire to help at least with advices. If you would like a write access please send me an e-mail.

-

closed as too localized by Joseph Wright♦Jan 5 '13 at 22:45

This question is unlikely to help any future visitors; it is only relevant to a small geographic area, a specific moment in time, or an extraordinarily narrow situation that is not generally applicable to the worldwide audience of the internet. For help making this question more broadly applicable, visit the help center.If this question can be reworded to fit the rules in the help center, please edit the question.

The \DeclareOption bit seems to be completely out of place. However it's impossible to give advice with such limited snippets of code. – egreg May 26 '12 at 18:08
@egreg Thank you so much for your prompt respond. I am trying to upload files into GitHub project which Mike created for us. As soon as I do it I will send you the link so that you can check out the code. At this point cutting and pasting code into the browser is just a waist of time. – Predrag Punosevac May 26 '12 at 19:10
@egreg Moved to GitHub. Please see the link I posted. If you need write access just let me know your GitHub username via private e-mail. Thanks for your help! – Predrag Punosevac May 26 '12 at 20:16
I suggest to use a package like keyval or xkeyval or kvoptions or pgfkeys etc. to provide user options. In this way you can define a key hyperref which will pass all options to the package. – Marco Daniel May 28 '12 at 10:29