Rearrange/organize code

- change LightImg back to LightweightImage
- Game methods are now in more organized locations
- move Entity into the entities package
- Mover doesn't have to import Entity anymore
- Comment Render
CHANGE: Mover smooth movement

I decided against making a separate SmoothMover class because I couldn't
think of an instance in which I would use a non-smooth Mover. So I
improved the smooth movement. Before this change, Mover would store the
delta value that hadn't been used in its movement every tick, and try to
use it the next tick, and save the unused delta, and continue that
pattern. I don't know what I was thinking. I scrapped that system, and
just changed the coordinates to doubles, so that a Mover's location can
be .002, for example, and delta can be .3, and the mover will move
steadily at .3 pixels per tick, without all the extra variable and logic
crap. Since I changed the coord data types, I had to override Entity's
get and set methods as well.

I also made the class abstract, so I removed the tick method and the
constructor, since they are unnecessary and won't be called anyway.
OPT: Render speed

The Index and Clip variables used to be initialized to the default at
their declaration, but since the if statements afterwards have to be run
anyway, I decided to put the default initializations in there as else
clauses. I honestly don't think this will have a real effect on render
speed, but it can't hurt and could save a little bit when rendering
objects at the edge of the screen.

Also added more comments.
CHANGE: Entity setPos instead of setX and setY

Odds are when an object wants to change the x or y values of an Entity,
it will want to change them both, so it's more convenient to use one
method to deal with both.
ADD Err class to print errors to console

Objects can use Err to print standardized error messages. Each message
has an ID number, which is used when calling it. This will make it
easier to standardize error messages in the future, especially to make
changes to every error message in the program. If I want to change the
email contact, I don't want to change every single reference to it
individually, for example.
ADD World class, REMOVE data from Game, v.0.02

The Game class deals with the wider Game loop and rendering, so I wanted
a World class to organize the individual ingame objects. World holds the
Lists of entities and tickers. It has its own tick method despite not
implementing Tick (I don't want a World to be able to add other worlds
to itself, for now anyway), and a separate callTick method that calls
the tick method of all its stored tickers. Game calls them both from its
run method, ensuring that subclasses of World don't need to worry about
calling everybody's tick methods.

Naturally, the lists (and their add methods) were removed from Game.
This way Game doesn't deal with the smaller stuff and World can
potentially micromanage system resources more.

I at first gave World's add method the power to add Tickers as well if
the given Entity implemented it, but I refrained because there is no
checking if any given Entity or Ticker had already been added. A dev
might add using the regular add method, then add again with addTicker.
This may become an issue later, but I would have to devote a lot of
valuable system resources to check if an object had already been added
to the world. Changing to LinkedList or maybe finding some other, better
format could help in finding a solution.

A World has a width and height independent of Game's width and height.
Game's dimensions are for the window size, while World will be covering
a much larger space.

TestMob and testWorld classes have been added to make sure the new
functionality works. TestMob might be modified later to make a basic Mob
class.

I also wrote a class Err with error methods to help standardize error
messages a little. They don't need to be anything fancy for now, just a
description with my contact information, but they could be more easily
standardized later.

Mover needs to have an easy reference to World so it can know the world
bounds without having hundreds of identical variables at the same time.
ADD new error messages

- when a LightweightImage can't find an image file
- when a null Entity is passed to render
- when a null ticker is called
- when a null entity is added to world
- when a null ticker is added to world
FORTIFY Entity's LightweightImage

All Entities automatically get an initialized default LightweightImage.
If they do not individually call for a new one, the game will not crash,
they will just get a white square.

Also made LightweightImage more opaque, so more visible.