Initial commit of ocaml-cry.
Ocaml-cry is a native implementation of the various protocols
used to communicate source data to icecast and shoutcast.

Current code is already usable :)

--HG--
extra : convert_revision : svn%3Aaec24677-d710-0410-a355-ac75e2bdf181/trunk%406511
Better raise code..

--HG--
extra : convert_revision : svn%3Aaec24677-d710-0410-a355-ac75e2bdf181/trunk%406512
Close socket after updating metadata..

--HG--
extra : convert_revision : svn%3Aaec24677-d710-0410-a355-ac75e2bdf181/trunk%406513
Documentation for ocaml-cry, polished code..

--HG--
extra : convert_revision : svn%3Aaec24677-d710-0410-a355-ac75e2bdf181/trunk%406514
Fixed typo..

--HG--
extra : convert_revision : svn%3Aaec24677-d710-0410-a355-ac75e2bdf181/trunk%406515
Various fixes for ocaml-cry..

--HG--
extra : convert_revision : svn%3Aaec24677-d710-0410-a355-ac75e2bdf181/trunk%406516
Really fixed metadata update for shoutcast..

--HG--
extra : convert_revision : svn%3Aaec24677-d710-0410-a355-ac75e2bdf181/trunk%406519
Also pass mime type to icy source connection..

--HG--
extra : convert_revision : svn%3Aaec24677-d710-0410-a355-ac75e2bdf181/trunk%406520
Raise Cry error when send failed.. ref #264

--HG--
extra : convert_revision : svn%3Aaec24677-d710-0410-a355-ac75e2bdf181/trunk%406530
Woops. Dunno why this debug thing sliped in a svn commit.
Handle read exception correctly.

ref #264

--HG--
extra : convert_revision : svn%3Aaec24677-d710-0410-a355-ac75e2bdf181/trunk%406531
Added exception catching for create_socket

refs #264

--HG--
extra : convert_revision : svn%3Aaec24677-d710-0410-a355-ac75e2bdf181/trunk%406533
Added another exception catching if calling List.hd on an empty list..

refs #264

--HG--
extra : convert_revision : svn%3Aaec24677-d710-0410-a355-ac75e2bdf181/trunk%406535
Added empty string in the list returned by read_data when no data could be read.

refs #264

--HG--
extra : convert_revision : svn%3Aaec24677-d710-0410-a355-ac75e2bdf181/trunk%406536
Reset icy_cap when connecting

--HG--
extra : convert_revision : svn%3Aaec24677-d710-0410-a355-ac75e2bdf181/trunk%406559
No need to call Unix.shutdown when calling Unix.close afterwards..
Also fixed missing close calls in ocaml-cry..
refrences #264

--HG--
extra : convert_revision : svn%3Aaec24677-d710-0410-a355-ac75e2bdf181/trunk%406569
Rewrote exc handling as well as Unix.close usage.. refs #264

--HG--
extra : convert_revision : svn%3Aaec24677-d710-0410-a355-ac75e2bdf181/trunk%406572
Renew socket when closing connection..

--HG--
extra : convert_revision : svn%3Aaec24677-d710-0410-a355-ac75e2bdf181/trunk%406579
Remove socket from the handler parameters, added in the status
type. Fix strange restart failure in freebsd, and also makes much more
sense for the API..

--HG--
extra : convert_revision : svn%3Aaec24677-d710-0410-a355-ac75e2bdf181/trunk%406599
Hide socket in status parameter. Socket is only accessible
through get_socket.

--HG--
extra : convert_revision : svn%3Aaec24677-d710-0410-a355-ac75e2bdf181/trunk%406603
Force binding bytecode compilation to happen before native code
when compiling with -j
make -j works perfectly in trunk here: fixes #94

--HG--
extra : convert_revision : svn%3Aaec24677-d710-0410-a355-ac75e2bdf181/trunk%406625