Merge pull request #230 from arielf/master

Add test to verify --nn without --quiet.  Other params are to get a good result
bug fix: in copy_audit_data, allocate memory depending on src, not dst
bug fix: properly initialize the non-POD members of the lda struct
When constructing the lda object, better avoid placement new and rather use just plain old new (pun intended).
Rationale: placement new should be used only when really necessary. (http://www.parashift.com/c++-faq/placement-new.html)
Drawback: if new POD members are added, they need to be manually zeroed here (or, preferably, in the lda struct's constructor).
Merge pull request #231 from reunanen/master

Minor bug fixes
fixed online print in cygwin bug
fixed memory leak
if we're doing LDA, let's print LDA results even if active learning is enabled
changed pointers to references
Fixed crashing in LDA's learn_batch function in case l.sorted_features is empty. (When a socket connection is dropped, l.sorted_features may end up being empty. In that case, l.sorted_features[0] does not exist and therefore its address cannot be taken. This is probably not the best place nor the best way to fix it, though - but given my limited understanding of VW, I felt this was the best I could do, for now at least.)
On Windows, sockets are not file descriptors. Therefore _read, _write, and _close should not be used for sockets. Replaced with recv, send, and closesocket.
1. Some band-aid for the situation when pointer > i.endloaded (which sometimes happened and definitely leads to invalid memory accesses)
2. #include <winsock2.h>
If doing LDA, don't set eta to 10 for "non default update rule".
conversion to &
Added new param lda_epsilon to replace the hard-coded convergence threshold used in the lda_loop function.
more pointer to ref conversions
more pointer to ref conversion
fix small memory leak
minor thing
reconcile