Using .NET 4.5.1
Moved to root directory

Makes namespaces much much easier.
Fixed dll
Allow code optimization and empty xml file
Figured out why builds were failing..
Using var everywhere
Ignoring tools file for spell check
May have fixed system.lazy not found namespace
Ignoring .cs extension for GhostDoc spell check
Make room static so that it can be easily accessed

Room should be static because other methods (like Outgoing) use it. This
way, the classes don't have to be extended to include the @In class.
Optimization: don't write blocks that already exist

If a block already exists on the map, don't bother sending it to the
server because it won't change anything.

However, this could mess up some clients that are poorly-written
(sending the same block event twice might be needed to update their maps
because of multi-threading issues).
Rename b to theBlock

I'm renaming this because it's conflicting with a class name.
Disable authentication with empty access key

The access key should be checked whether or not it is null or empty.
Since the room's access key cannot be just whitespace or empty, it's
better to tell the user the specific issue.
Warn user if they cannot load the level

Throw a new accessviolationexception if the user (who is unauthenticated
to the room) tries to load it from it's most recent snapshot. Prevents
people from having to check if they are authenticated first before
loading the room.
Revert "Make room static so that it can be easily accessed"

This reverts commit 777d89e6418fd9e43a0de00e2f240d80469e8cd1.
Code analysis and dll updated
Allow Build.Outgoing access to room map

Allowed the Build.Outgoing class to access the room map so that the
optimizations can be performed. This resolves an error for when Source
wasn't available because it was non-static being accessed from a static
context.
Removing empty object initializer

Until I see why, this really isn't doing anything.
Error unauthorized msg when allowing potions

If you are unauthorized and the user tries to allow potions, a warning
now appears. This helps with debugging as the error would have been that
you didn't connect, which is false.
More general exception

The previous exception concerned not being able to write to shared
memory, which has nothing to do with this.