Initial Commit

Everything I've done so far...
Create README.md
Fixed a few bugs and added timers

The timer library is similar to the one in GLua. Will allow for easy
management of server advert messages.
More bug fixed and added adverts

The adverts plugin lets you define a set of server messages to loop
through over time in the chat.
Added AFK kicker

Also made notify say who it is notifying.
Added mapvote plugin and various improvements

- Fixed string arguments passing an empty string where they should error
- Fixed hooks not returning values returned by plugin hooks
- Fixed notify getting cut off by the max chat length.
- Added to the maths and table libraries.
- Fixed string.TimeToString putting "and X seconds" when there were
seconds but no minutes to display.
Made logging optional

Also expanded the readme slightly.
Completed MotD plugin

Also added NotSelf option to client arguments, will refuse to target the
player using the command.
Added the ability to accept the MotD

Means you no longer see it every time you join.
Added unstuck plugin

Hopefully it works fine without being exploitable, I only have limited
means to test it...
Fixed a few minor issues

- Made kick print when used.
- Added a kick reason.
- Fixed a missing argument when listing maps.
Added votescramble plugin

Votes to scramble the teams, either at random or based on score.
Also fixed stuff:
- table.Shuffle being not well thought out...
- A few things applying to bots that shouldn't.
- voterandom is replaced by votescramble, in my opinion this is better
than forcing random teams constantly.
Varying levels of hax

- I've hooked into NS2's chat system in order to customise it more to my
liking. This allows for messages with custom prefix, name or no
prefix/name at all.
- Shine:Notify() was changed to use this new system and thus I've
updated all instances of it (might have missed a few, we'll see).
- Added votesurrender, not finished.
Completed votesurrender

Also added immunity to scrambling for admins with permission to
"sh_scrambleimmune".
Added logging plugin

- Added more hooks for use with the logging plugin.
- Made it possible to select multiple teams by comma separating
@directives.
- Fixed a bug with Shine:Notify()
- Fixed a minor bug with the time left string in map votes.
- Fixed being able to nominate the current map when AllowExtend is
false.
- Added immunity to the MotD.
- Fixed an issue with simple timers.
A few minor bug fixes

- Client arguments in console commands that are optional default to the
client that entered the command if no default is defined.
- List plugins won't fail if a plugin hasn't defined a version.
- Logging plugin requires Shine's logging to be enabled.
- Fixed Shine.GetRandomPlayerList()'s silly sorting.
Added welcome messages plugin

Displays a customisable message when certain users connect and
disconnect.
Also made the default config include all available plugins in the table
and use the true/false value to enable/disable them.
Added server switcher plugin

Doesn't do all that I hoped, but lets you define servers and have
clients switch over to them.
Fixed double console printing

Also removed the message when saving the welcome messages config as it
saves every time a player with a message connects or disonnects.
Fixed map changes not preserving mods

Plus a few other minor changes.