Database (De)Serialize Object instead of State

Serialization and deserialization now use a Project data object
instead of using just name and state.
Moved project (de)serializer creation to connect

Instead of having to create a (de)serializer for a project
in every function that handles database transactions the
(de)serializer was moved into connect.php which also
creates the database connection.
getAll method for deserializing project objects

Replace listId with getAll to avoid naming ambiguities (listId
returned all the names) and enable future support for displaying
more information on the load screen. Current load functionality
was kept by trimming the objects back to the name for now. Various
comments added throughout, especially with regards to object
(de)serialization.
Merge branch 'master' into database-object
Merge pull request #101 from KSHSK/database-object

Database object