Library that includes Unmodifiable extensions of  java.util.Properties, sql.Date, util.Date, etc
<p>Firstly let me say I believe immutability is one of the best things one can do to improve the reliability, simplicity and give one confidence about a system. No more worries about defensive copies or values changing and so on which is for me a good thing.</p>

<p>That said though simple the Collections library unmodifiableXXX methods are a simple way to present readonly collections which is a good thing and keeps stuff safe. It doesn't solve all problems in the universe but its a good thing to have.</p>

<p>After all that I am after a library that tries to fix some of the other warts.</p>

<p><strong>A read only properties</strong></p>

<ul>
<li>the r/o would wrap another Properties</li>
<li>extends java.util.Properties</li>
<li>mutator methods throw UOE.</li>
<li>keySet/valueSet views etc should also be read only</li>
</ul>

<p><strong>mutable properties</strong></p>

<ul>
<li>the map (e.g. put) methods throw UOE</li>
<li>only the proper Properties methods like setProperty should work.</li>
<li>extends java.util.Properties</li>
</ul>

<p>The exercise for Properties is repeated for Stack as well. Repeat exercise for java.util.Date, java.sql.Date etc.</p>

<p>Please don't tell me to write my own, because yes I could but I was hoping this boring stuff was already done :)</p>
