To do list
----------

- align the rules structure file so that it complies with the table from the web page
  [DONE 20020601]
- update the help output from the jcsc command 
  [DONE 20020601]
- write a graphical UI to change the rule files
  [DONE 20020904]
- update the grammar for the JDK1.4
  [DONE 20020705]
- -j to use the classpath in order to find the rules file; use classloader (see IconFactory)
  [DONE 20020602]
- create an ANT task
  [DONE 20020820]
- add check for number of parameters
  [DONE 20020628]
- add html folder to JCSC.zip (distro) file
  [DONE 20020905]
- fix unix shell scripts
  [DONE 20020906]
- add JavaDoc check
  [DONE 20020916]
- add check for conditional expression ?: (whether it is allowed or not 'void ConditionalExpression()')
  [DONE 20020918]
- add check for complex loop expressions
  [DONE 20020914]
- add Author to output xml to be displayed on websites
  [DONE 20020917]
- align default.jcsc rules to Sun standard and mention it on the website
  [DONE 20021003]
- add 3rd third state 'don't care' for some rules
  [DONE 20021010]
- add NCSS (non commenting source statements)
  [DONE 20021017]
- add CCN (cyclomatic complexity number)
  [DONE 20021114]
- encapsulate the regexp check (a method to remove code redundancy)
  [DONE 20021114]
- have filedialog remember to current location
  [DONE 20030118]
- check that all mandatory properites are set in the JCSC ant task
  [DONE 20030120]
- add <stardate> property in the Ant task to consider only files younger then date
  [DONE 20030126]
- add <failvalue> property in the Ant task which will cause the task to fail if avg vio are higher
  [DONE 20030128]
- add JUnit test to run a smoke test on JCSC
  [DONE 20030207]
- add check if right java version is used (1.3+)
  [DONE 20030208]
- on the JCSC website show statistics per package (same as for all code)
  [DONE 20030226]
- separate the grammar from the logic 
  [DONE 20030613]
- brace new line check should be true/false and either 
  [DONE]
- fix the nested type failure by using a stack on which each type is pushed; then the stack can
  be used to analyze the if correct or wrong. [DONE - fixed if else line]
- add JCSC Ant task feature to copy xsl and index.html, examplehtml to dest folder
  [DONE 20030911]
- remove all Config tab related files (source, html, xml chunck from rules)
  [DONE 20030920]
- add ant property to fail build if violations of a certain priority have benn violated
  (EmptyCatchBlock with Priority 5 will break build when found)
  [DONE 20030921]
- change XSL to show highest severity level
  [DONE 20030921]
- verbose ant option should show details
  [DONE 20031228]
- add LOC (all lines)
  [DONE 20031230]
- rename <priority> to <Severity>
  [DONE 20040102]
- fix the spacing problem for binary expressions and statements
  [DONE 20050530]

- add check for empty blocks in if,else,while,do-while
- add CLOC (commenting lines of code)
- add check that each case has a break
- make tabulator length definable
- checkout why the parsing is slower when run with -j option then with -r

- add check for negated if statments (if (! ...))
- add check for numerical literals (ie. StringLiterals - allowed are -1, 0, 1
- add rule for static initializer block
- add test for not found rules file (filesystem or zip) to not throw NullPointer exception
- fix orange icon background