make sure more modules are included in a release (issue #122)

The problem that caused issue #122 is that the yaws_outmod module, which
isn't directly referenced by any other yaws module, was not being included
in the application release. Change the mod_cond in rel/reltool.config to
all rather than app to ensure yaws_outmod gets included.
revert commit d990b30

Commit d990b30 was intended to fix issue #122 but my testing was flawed, so
I'm reverting it. The real issue seems to be a bug with reltool not
honoring app overrides of sys-level mod_cond settings.
make sure "rebar eunit" passes

When using yaws as an app dependency for another application built with
rebar, I noticed that testing that application with "rebar eunit" would
fail while testing yaws. It was easy to work around with "rebar eunit
skip_deps=true" but yaws really should pass its tests when tested via
rebar.

Change rebar.config to add ibrowse as a dependency. It's used only for
testing, but rebar doesn't support test-only dependencies, plus it's
filtered out during release generation anyway.

Modify some of the test files to be able to find ibrowse include files
regardless of whether they're built via make or via rebar. Also rename all
non-eunit test functions ending in "_test" so they don't confuse eunit. Also
had to move the embedded_yaws_id_dir test from eunit to t2 because it fails
under "rebar eunit" when yaws is a dependency for another app. It fails
because it calls into the yaws_api:embedded_start_conf function which tries
to call application:load(yaws), but paths aren't properly set up to allow
that to work under these testing circumstances.

Note that not all tests currently run under rebar; building with make and
then running "make test" results in many more tests being executed. Fixing
this will come later.
add startup script for FreeBSD 9 (Thomas Elsgaard)

Add scripts/freebsd/yaws for FreeBSD version 9 or later. The original
script at scripts/freebsd/yaws.sh is retained for use with FreeBSD versions
prior to 9.
update mime.types file
Update Makefile and src/Makefile

* Targets in `Makefile` of `yaws.plt` and `dialyzer` calls
  dialyzer with two target directories, `ebin` and `src`;
  this causes the error of duplicate modules.
  Checking out the .beam files under `ebin` is sufficient
  for dialyzer; `src` is removed.

* Target `mime_type_c.beam` in `src/Makefile` is
  superfluous and generates a spurious .beam file in
  the `src` directory, so the target is removed.
  Also target `charset.def` in `src/Makefile` should be
  dependent on `../ebin/mime_type_c.beam`, so this is
  also changed from the previous target without the
  directory path.
Merge pull request #124 from jj1bdx/jj1bdx-dialyzer-fix

Update Makefile and src/Makefile
update known dialyzer warnings file
Added support to configure ciphers in ssl, previously the ciphers = Val stricng in yaws.conf required the Val to be a string according the openssl cipher string spec language. Now we specify an erlang list instead, the list shall comply to the output of ssl:cipher_suites()
Merge branch 'master' of github.com:klacke/yaws
Optimize the ACL checks during the request's authentication

Now, in yaws_server:handle_auth/4, the client ip is no more converted into
integer. All ip addresses in #auth.acl are of the type ip_address(). That makes
easier the checking of the client ip.
To clean up the code, functions that parses and checks the allowed/denied ip
addresses with the client ip were moved into yaws.erl.
Fix tests on Transfer-Encoding header to be case-insensitive
Parse extensions and trailing headers of chunked transfer encoded requests

Chunk extensions and trailing headers are parsed but ignored in requests
and are not supported in responses. It is a strange feature of the RFC-2619
and would be hard to implement. Moreover, this feature is rarely supported
by clients and servers and even less used.
So, without any concrete use-case, no further work will be done on this
subject.
update known dialyzer warnings file
add some missing HTTP status codes
Fix SSL socket wrapping

We must be careful when we rely on Arg#arg.clisock in Yaws modules
because the socket is wrapped in case of SSL connections.

Thanks to Jean-Charles Campagne.
document 127.0.0.1 as the default listen interface

Fix the yaws.conf man page to state that 127.0.0.1 is the default listen
interface for a virtual server. Also document the same in the yaws.tex
file.
some man page cleanup/repair
Added RFC6265 compliant variant of setcookie.

The new set_cookie/3 function implements more complete RFC2109
cookie formatting than setcookie/6 and is 10x - 15x more efficient
than its old setcookie counterpart because of avoiding the use of
io_lib:format/2.  The setcookie/2 through setcookie/6 are marked
as deprecated.  The function is named set_cookie rather than setcookie
to facilitate the ease of depricating the old implementation.
Added test cases.