Removed debug output (test on new branch)
Fixed stupid bug pointed out by His Lordship Tres
Added thread specific directories
Stupid fixes, mostly scraps of debug code being removed
Added a .length() function to FileData.
Updated NetworkPacket to use proper .put(byte[]) and .put(ByteBuffer)
size prefixes.
Created ByteArrayBuilder and moved NetworkPacket to be a subclass of
ByteArrayBuilder - furthermore, added ByteDecomposable as a
simplification class which puts byte array resolving in the hands of the
class.
FileData now extends from ByteDecomposable.
.getBytes() has become .getByteArray() and .getAsByteArray() has become
getBytes().
Corrected FileData.from(byte[]) to use .getByteArray() instead of
.getBytes().
Added .getLanguage() and .getMetadata() getters.
FileData.getByteSize() now also includes the length prefix (4 bytes
added).
Added PacketUtils to simplify String size obtaining, and
ProblemSubmission + ProblemSubmissionAck for submitting/checking
problems.
Pull rebase
Added ServerProblem and changed Problem
Changed FileData to _not_ add the additional 4 byte prefix; this now belongs in PacketUtils.getSize(ByteDecomposable). ProblemSubmissionAction now takes advantage of this function.
Changed Competition.getname() -> Competition.getName()
Added CompetitionInfoAction, which informs the client of the current state of the competition.
Added server versions of problem and languagedef
Made executable a ByteDecomposable